ERROR 1068 (42000): Multiple primary key defined

新的一年学习新的bug。

数据库报错:

ERROR 1068 (42000): Multiple primary key defined

这个是因为你有两个主键:

如果你想只要一个主键ok:

alter TABLE t_product CHANGE sn sn int not null default 0;

先把表t_product 的字段sn默认初始化为0;


alter table t_product drop primary key;

删除表t_product 自定义的主键


但是我想设置自己的主键还是报错:

ERROR 1062 (23000): ALTER TABLE causes auto_increment resequencing, resulting in duplicate entry '1' for key 'PRIMARY'

我改成:

alter TABLE t_product CHANGE sn sn int primary key auto_increment not null;

不为空,但是继续报错:

这才知道问题所在我的问题是sn这个字段有个值为0,所以才会不停报上面错误:

先把0改成1000,然后命令:alter TABLE t_product CHANGE sn sn int primary key auto_increment not null; 就可以了,接着改把字段值为1000改成0就ok拉

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 数据库:存放数据的仓库; 硬盘 运行内存 mysql 现在被oracle收购了 oracle oracle公司 s...
    凤之鸠阅读 991评论 0 0
  • ‘午后,我约老树(蔡军)到三义寺走走。这里,曾经的一中变成了笔架中学,过去人车熙熙攘攘的汽车渡口已是一座废弃的码头...
    无影树阅读 214评论 0 3
  • 今天带倍倍看了《寻梦环游记》,迪斯尼的动画片真心不错。 倍倍看得泪流满面,告诉我她想外公了,其实我...
    小颖_f835阅读 431评论 0 0
  • 其实我开始做饭不是国庆期间,而是国庆前。刚去新的公司,晚上一个人不想去食堂吃饭,休假期间吃了几天小区外的炒饭,感觉...
    学长酱阅读 374评论 0 0