1.MySQL5.6之后的my.ini文件的配置
设置默认字符是UTF-8
设置存储引擎为INNODB,它支持事务
skip-name-resolve可以提高远程连接速度
级联查找表 外键查询
ON作为条件配合INNER JOIN使用
自循环表的查询
MySQL 修改字段类型或长度
mysql> alter table 表名 modify column 字段名 类型;
例如
数据库中address表 city字段是varchar(30)
修改类型可以用(谨慎修改类型,可能会导致原有数据出错)
mysql> alter table address modify column city char(30);
修改长度可以用(修改长度,要保证不短与已有数据,以保证原有数据不出错)
mysql> alter table address modify column city varchar(50);
char和varchar的区别:char设定好大小就预留多大存储空间,varchar可变
CHANGE和MODIFY的区别
ALTER COLUMN
语法:
ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}
作用:
设置或删除列的默认值。该操作会直接修改.frm文件而不涉及表数据。所以,这个操作非常快。
例子:
mysql> alter table film alter column rental_duration set default 5;
mysql> alter table film alter column rental_duration drop default;
CHANGE COLUMN
语法:
CHANGE [COLUMN] old_col_name new_col_name column_definition [FIRST|AFTER col_name]
作用:
列的重命名、列类型的变更以及列位置的移动
例子:
ALTER TABLE MyTable CHANGE COLUMN foo bar VARCHAR(32) NOT NULL FIRST;
ALTER TABLE MyTable CHANGE COLUMN foo bar VARCHAR(32) NOT NULL AFTER baz;
MODIFY COLUMN
语法:
MODIFY [COLUMN] col_name column_definition [FIRST | AFTER col_name]
作用:
除了列的重命名之外,他干的活和CHANGE COLUMN是一样的
例子:
ALTER TABLE MyTable MODIFY COLUMN foo VARCHAR(32) NOT NULL AFTER baz;
GROUP BY
HAVING作为条件配合GROUP BY使用。
GROUP BY 可以用来分类,它取的是每个种类的第一个