![](https://i-blog.csdnimg.cn/blog_migrate/964212518b52b6683003f8985f80650a.png)
本文主要介绍了如何修改mysql数据表主键问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
−
修改mysql数据表主键
这里以网上copy的建表语句为例
1 2 3 4 5 6 7 8 9 10 11 | create table users ( name varchar (50) null , salt char (4) null comment '盐' , password varchar (255) null comment '密码' , create_at timestamp default CURRENT_TIMESTAMP null comment '创建时间' , update_at timestamp default CURRENT_TIMESTAMP not null on update CURRENT_TIMESTAMP comment '修改时间' , tid int unsigned auto_increment primary key ) charset = utf8; |
mysql的版本是8,这里要把主键tid改为id。需改自增主键需要三步骤
先删除掉自增
1 | alter table users modify tid int not null ; |
再删除主键
1 | alter table users drop primary key ; |
修改名称
1 | alter table users change tid id int unsigned auto_increment primary key ; |
mysql表的修改---主键等各种约束
1、添加字段
1 | alter table 表名 add column 字段 字段类型 约束 |
2、更改原表字段名,同时可以更改字段类型,长度,约束
1 | alter table 表名 change 旧字段 新字段 字段 字段类型 约束 |
3、更改字段类型,长度,约束
1 | alter table 表名 modify 字段 字段类型 约束 |
4、删除字段
1 | alter table 表名 drop 字段名 |
5、增加主键,可以增加联合主键
1 | alter table 表名 add primary key (字段名1,字段名2) |
6、删除主键
1 | alter table 表名 drop primary key |
7、增加外键
1 | alter table 表名 add constraint 约束名 foreign key 表名(字段名1,字段名2) references 关联表(字段名1,字段名2) |
8、删除外键
1 | alter table 表名 drop foreign key 外键名 |
9、修改表名称
1 | alter table 表名 rename to 新表名 |
以上为个人经验,希望能给大家一个参考。
转自:微点阅读 https://www.weidianyuedu.com