表维护笔记
更改表名
ALTER TABLE test RENAME tests;
或者:
RENAME TABLE test to tests;
将test表改成tests表。
更改表的字符集
比如更改为gbk,不过用的很少,一般创建数据库时就已经定好了,不会再改动。
ALTER TABLE tests CHARSET gbk;
清空表数据
DELETE FROM test;
使用delete删除有的软件会提示你没有where条件,是否全部删除,有的不会,这种方式删除会比较慢。
我们可以用这种方式:
TRUNCATE test;
删除表
DROP TABLE IF EXISTS test;
用if判断下表是否存在,存在则删除。
修改表字段名和属性
ALTER TABLE tests MODIFY emails VARCHAR(50) NOT NULL;
使用modify关键字只能修改字段的类型,而不能修改字段名。
使用change字段则可以修改字段名和字段属性。
ALTER TABLE tests CHANGE emails email VARCHAR(30) NOT NULL;
新增字段
给表添加一个age字段
ALTER TABLE tests ADD age INT DEFAULT null;
默认情况,新增的字段排序是在末尾,我们也可以指定位置。
比如我要求新增的age字段是在email的后面
ALTER TABLE tests ADD age INT DEFAULT null AFTER email;
或者我们可以指定到最开头
ALTER TABLE tests ADD age INT DEFAULT null FIRST;
删除字段
ALTER TABLE tests DROP age;
移除表的主键
一般情况下都会使用自增的id作为主键,我们也可以移除,不过对于自增的id,我们需要先移除自增属性才可以删除主键。
移除自增也很简单,就是用修改字段属性,用新的属性覆盖它即可。
ALTER TABLE tests MODIFY id INT NOT NULL;
接着我们再移除主键
ALTER TABLE tests DROP PRIMARY KEY;
添加表主键
添加主键不要求必须自增
ALTER TABLE tests ADD PRIMARY KEY (id);
我们也可以手动补上自增,也是一样字段类型重新设置。
ALTER TABLE tests MODIFY id INT NOT NULL AUTO_INCREMENT;
我们也可以组合一起使用
ALTER TABLE tests MODIFY id INT NOT NULL AUTO_INCREMENT, ADD PRIMARY key (id);
版权申明
本文系作者 @木灵鱼儿 原创发布在木灵鱼儿站点。未经许可,禁止转载。
暂无评论数据