为了账号安全,请及时绑定邮箱和手机立即绑定

建表的时候主键没有设置成AUTO_INCREMENT可以修改吗

建表的时候主键没有设置成AUTO_INCREMENT可以修改吗?

正在回答

3 回答

后面不可以再跟pramary key

https://img1.sycdn.imooc.com//5b07cacb0001215006440170.jpg

0 回复 有任何疑惑可以回复我~

为什么我这提示重复定义呢

https://img1.sycdn.imooc.com//5b07ca4a000104b506540159.jpg

0 回复 有任何疑惑可以回复我~
只能有一个自增的列,而且一般来说该列都是主键
每个表里只能有一个auto_increment,不能有多个
字段设置了 auto_increment 属性后,必须设置为主键 PRIMARY KEY (`id`)。
所以后期可以改,但必须添加auto_increment 的字段是 主键
alter table users2 modify id tinyint unsigned auto_increment primary key ;


//部分代码:
Query OK, 0 rows affected (0.04 sec)Records: 0  Duplicates: 0  Warnings: 0
Query OK, 0 rows affected (0.03 sec)Records: 0  Duplicates: 0  Warnings: 0

//展示结构,查看是否修改的id字段里包含(auto—increment)
t96>>>show create table users2;

 users2 | CREATE TABLE `users2` ( 
  `id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT, 
   `username` varchar(10) NOT NULL,  `p_id` tinyint(3) unsigned NOT NULL, 
    `age` tinyint(3) unsigned NOT NULL,
    PRIMARY KEY (`id`), 
     UNIQUE KEY `username` (`username`))
      ENGINE=InnoDB DEFAULT CHARSET=utf8 |+--------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+1 row in set (0.00 sec)


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
与MySQL的零距离接触
  • 参与学习       396886    人
  • 解答问题       3353    个

本课程涵盖全部MySQL数据库的基础,学习MySQL数据库的基础知识

进入课程

建表的时候主键没有设置成AUTO_INCREMENT可以修改吗

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信