快捷搜索: 王者荣耀 脱发

Mysql中修改表结构中关键字add,change,modify

2

5

1.测试用例(来源是牛客网中的sql题)

drop table if exists user_info;
CREATE TABLE IF NOT EXISTS user_info (
id int PRIMARY KEY AUTO_INCREMENT COMMENT 自增ID,
uid int UNIQUE NOT NULL COMMENT 用户ID,
`nick_name` varchar(64) COMMENT 昵称,
achievement int COMMENT 成就值,
level int COMMENT 用户等级,
job varchar(10) COMMENT 职业方向,
register_time datetime DEFAULT CURRENT_TIMESTAMP COMMENT 注册时间
)CHARACTER SET utf8 COLLATE utf8_general_ci;

2.关键字 add

    含义:当表建立后,需要添加字段的时候使用 请在用户信息表,字段level的后面增加一列最多可保存15个汉字的字段school; ADD COLUMN <列名> <类型> -- 增加列
ALTER TABLE user_info ADD school varchar(15) after level;

 3.关键字 change

    含义:更改列的名称及数据类型 并将表中job列名改为profession,同时varchar字段长度变为10 CHANGE COLUMN <旧列名> <新列名> <新列类型> -- 修改列名或类型
ALTER TABLE user_info change  job profession varchar(10);

 4.关键字 modify

    含义:更改列的数据类型 achievement的默认值设置为0 MODIFY COLUMN <列名> <类型> -- 修改列类型
ALTER TABLE user_info modify achievement int(11) DEFAULT 0;

5.alter中其他关键字

    ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT } -- 修改/删除 列的默认值 DROP COLUMN <列名> -- 删除列 RENAME TO <新表名> -- 修改表名 CHARACTER SET <字符集名> -- 修改字符集 COLLATE <校对规则名> } -- 修改校对规则(比较和排序时用到)

 

经验分享 程序员 微信小程序 职场和发展