mysql如何取消主码约束

mysql如何取消主码约束,第1张

主码完整性约束的设置有两种方法:1.在定义数据项的时候就声明它为主码2.在表创建完成之后增加完整性约束对应于1,撤销完整性约束alter table employeedrop primary key对应于2.alter table emloyeedrop constraint PK_enoPK_eno 为当初创建完整性约束时为该约束性定义的名字

假设你的表名是“manager”,现自增主键列名是“id”,另有一列名为“user_id",现在要把现有主键“id”取消主键约束,更改为新主键“user_id”,那么用pt工具更改命令如下:

/usr/bin/pt-online-schema-change --user=root --host=127.0.0.1 --port=3306 --charset=utf8 --nodrop-old-table --alter="change id id int(10), drop primary key, modify user_id int auto_increment primary key" D=数据库名,t=manager --exec

说明:以上第一步取消原自增主键‘id’的自增属性(否则无法修改),第二步drop主键约束,第三步将user_id设置为新主键。

注:如表上有触发器则不可使用此pt工具。

使用完毕会产生一个“manager_old”表,这是原表备份,以便更改失误后回退,务必确认更改无误后删除。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8618086.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存