常用基础 - 添加/删除/修改字段 ¶
作者:KK
发表日期:2018.06.02
即使前期设计好了数据表,相关业务功能也已经开发完毕,但后期还是经常有需要修改数据表的,当然我们是尽可能使用工具来修改,然而命令都是需要知道的,总有用得上的时候,起码留个印象吧。
添加字段 ¶
ALTER TABLE 表名 ADD 字段名 字段描述;
示例:ALTER TABLE user ADD age TINYINT(3) NOT NULL COMMENT '年龄';
添加时设定默认值
ALTER TABLE user ADD age TINYINT(3) NOT NULL DEFAULT 0 COMMENT '年龄';
,关键词DEFAULT 0
添加字段并位置指定字段之后 ¶
ALTER TABLE 表名 ADD 字段名 字段描述 AFTER 指定字段名;
添加到 name 字段之后的示例:ALTER TABLE user ADD age TINYINT(3) NOT NULL COMMENT '年龄' AFTER name;
修改字段 ¶
ALTER TABLE 表名 MODIFY COLUMN 字段名 字段描述;
完全修改字段:
ALTER TABLE user MODIFY COLUMN age VARCHAR(3) NOT NULL DEFAULT 99 COMMENT '年龄2';
修改字段名称:
ALTER TABLE user CHANGE COLUMN username user_name
调整现有字段的位置 ¶
ALTER TABLE 表名 CHANGE 要修改的字段名 新的字段名 类型定义 注释 AFTER 哪个字段之后
示例:ALTER TABLE user CHANGE age age VARCHAR(3) NOT NULL DEFAULT 0 COMMENT '年龄' AFTER name;
其实是重新定义这个字段,包括修改它的名字、类型和注释等,但是如果你在修改过程中只声明age VARCHAR(3) NOT NULL
而没有注释的话,那这个字段被修改后就会失去注释了,所以要完整定义哦。
删除字段 ¶
ALTER TABLE 表名 DROP 字段名
示例:ALTER TABLE user DROP age
练习 ¶
/*建表*/
CREATE TABLE user(
name VARCHAR(10),
birthday DATE
);
/*查询这张表的摘要,表确实建好了*/
DESC user
/*添加字段*/
ALTER TABLE user ADD age TINYINT(3) NOT NULL COMMENT '年龄';
/*查询这张表的摘要,多了age字段,注意类型是TINYINT*/
DESC user
/*修改字段类型*/
ALTER TABLE user MODIFY COLUMN age VARCHAR(3) NOT NULL COMMENT '年龄2';
/*查询这张表的摘要,age变成了VARCHAR类型*/
DESC user
/*删除字段*/
ALTER TABLE user DROP age;
/*查询这张表的摘要,age没有了*/
DESC user
/*练习完把表删掉吧*/
DROP TABLE user;