Mysql 错误:Duplicate entry '0' for key 'PRIMARY'

【1】添加数据报错:Duplicate entry '0' for key 'PRIMARY'

(1)问题现象

SQL 语句如下:

复制代码
DROP TABLE test_distinct;
CREATE TABLE `test_distinct` (
  `Id` INT(11) NOT NULL,
  `IdA` INT(11) DEFAULT NULL,
  `IdB` INT(11) DEFAULT NULL,
  `IdC` INT(11) DEFAULT NULL,
  `IdD` INT(11) DEFAULT NULL,
  PRIMARY KEY (`Id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4;

INSERT INTO 
test_distinct(IdA, IdB, IdC, IdD) 
VALUES 
(1, 1, 1, 1),
(1, 2, 2, 2),
(2, 2, 2, 2),
(1, 3, 1, 1);
复制代码

报错如下:

(2)分析原因

主键字段,没有添加自增 关键字 AUTO_INCREMENT

(3)修改后

SQL语句如下:

复制代码
DROP TABLE test_distinct;
CREATE TABLE `test_distinct` (
  `Id` INT(11) NOT NULL AUTO_INCREMENT,
  `IdA` INT(11) DEFAULT NULL,
  `IdB` INT(11) DEFAULT NULL,
  `IdC` INT(11) DEFAULT NULL,
  `IdD` INT(11) DEFAULT NULL,
  PRIMARY KEY (`Id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4;

INSERT INTO 
test_distinct(IdA, IdB, IdC, IdD) 
VALUES 
(1, 1, 1, 1),
(1, 2, 2, 2),
(2, 2, 2, 2),
(1, 3, 1, 1);

SELECT * FROM test_distinct;
复制代码

数据信息:

插入数据,一切顺利。

Good Good Study, Day Day Up.

顺序 选择 循环 总结

posted @   kaizenly  阅读(48487)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
打赏

喜欢请打赏

扫描二维码打赏

微信打赏

点击右上角即可分享
微信分享提示