一、新增列
新增ID列
ALTER TABLE table_name ADD id bigint PRIMARY KEY AUTO_INCREMENT first;
first
表示设置该列为表的第一列
新增普通列
ALTER TABLE table_name ADD col_name col_type after exists_col_name;
after
表示新增的列在已存在的某一列后面
二、修改列
修改某一列
ALTER TABLE table_name MODIFY COLUMN col_name col_type;
三、创建索引
创建主键
ALTER TABLE `table_name` ADD PRIMARY KEY (`col_name`);
创建普通索引
ALTER TABLE `table` ADD INDEX `index_name` (`col_name`);
In MySQL, if you use
ALTER TABLE tbl ADD INDEX (col)
instead ofALTER TABLE tbl ADD INDEX col (col)
, then usingALTER TABLE tbl ADD INDEX (col)
more than once will keep adding indices namedcol_2
,col_3
,... each time. Whereas usingALTER TABLE tbl ADD INDEX col (col)
2nd time, will giveERROR 1061 (42000): Duplicate key name 'col'
.
创建唯一索引
ALTER TABLE `table_name` ADD UNIQUE unique_index_name (`col_name`);
创建联合索引
ALTER TABLE `table_name` ADD INDEX `index_name` (`col_01`, `col_02`);
注意:联合索引需遵循最左匹配原则。
移除索引
DROP INDEX `index_name` ON `table_name`;
如果遇到无法删除索引的情况,比如DRDS一般就不能直接drop,需要使用alter table
来操作,如下:
ALTER TABLE `table_name` DROP INDEX `index_name`;
查询表索引
SHOW INDEX FROM `table_name`;
修改
AUTO_INCREMENT
ALTER TABLE table_name AUTO_INCREMENT = value;
修改
DRDS
sequence
ALTER SEQUENCE <sequence_name> START WITH <numeric_value>
作者:泥称已被栈用
链接:https://www.jianshu.com/p/e3f09d2c9bab
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦