工作中难免要更新MySQL数据表结构,在本地可以使用phpMyadmin之类的工具方便修改,线上库一般没有权限,就需要上服务器手敲sql了。在此总结一下MySQL修改表结构的方法。
1.添加表字段
alter table table1 add transactor varchar(10) not Null;2.修改表字段
alter table 表名称 change 原字段名 新字段名 字段类型 [是否允许非空]; -- 修改字段名和字段类型 alter table 表名称 modify 字段名称 字段类型 [是否允许非空]; -- 修改字段类型3.删除表字段
ALTER TABLE mytable DROP 字段名;4.修改表名
alter table table_name rename table_new_name;5.修改数据引擎 alter table table_name engine=innodb;6.查看表属性
desc table; -- 查看表中各列属性 show create table tablename; -- 查看建表语句7.查看全局默认字符集(charactor set)和字符序(collation) show global variables like '%charactor%'; show global variables like '%collation%';8.修改全局默认字符集在建数据库,建表和设置列的时候都可以指定字符集和字符序,它们逐级覆盖,若都没有指定则使用全局默认字符集和字符序。
修改全局默认字符集可以修改mysql配置文件,在[mysql]和[mysqld]下分别修改客户端和服务端默认字符集
[mysql] no-auto-rehash default-character-set=utf8 [mysqld] port = 3306 character-set-server=utf8
