mysql中的错误代码1452(23000)和 1062(23000)
文章目录
- mysql中的错误代码1452(23000)
- 解决 先将外键的数据补充完整
- mysql 错误代码: 1062(23000)
- 分析
mysql中的错误代码1452(23000)
其实出现错误的原因是:插入外键的数据在另一张表的主键中不存在;
【也就是逐渐已经设置,但是还没有添加数据】
解决 先将外键的数据补充完整
如:
mysql> insert into coure(cid,cname,tid) values
-> ('01','语文','02'),
-> ('02','数学','01'),
-> ('03','英语','03');
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`mydb`.`coure`, CONSTRAINT `coure_ibfk_1` FOREIGN KEY (`tid`) REFERENCES `teacher` (`tid`))
mysql> insert into teacher values
-> ('01','张三'),
-> ('02','李四'),
-> ('03','王五');
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> insert into coure(cid,cname,tid) values
-> ('01','语文','02'),
-> ('02','数学','01'),
-> ('03','英语','03');
Query OK, 3 rows affected (0.01 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql 错误代码: 1062(23000)
ERROR 1062 (23000): Duplicate entry ‘01’ for key ‘coure.PRIMARY’
分析
原因:主键字段有两条为01的记录,冲突。(设置主键自增解决)( duplicate重复)
我是不小心把表名写错了,导致主键冲突🥶😫
如:
主键重复!
mysql> insert into coure values
-> ('01','01',80),
-> ('01','02',90),
-> ('01','03',99),
-> ('02','01',70),
-> ('02','02',60),
-> ('02','03',80),
-> ('03','01',80),
-> ('03','02',80),
-> ('03','03',80),
-> ('04','01',50),
-> ('04','02',30),
-> ('04','03',20),
-> ('05','01',76),
-> ('05','02',87),
-> ('06','01',31),
-> ('06','03',34),
-> ('07','02',89),
-> ('07','03',98);
ERROR 1062 (23000): Duplicate entry '01' for key 'coure.PRIMARY'
mysql> insert into score values
-> ('01','01',80),
-> ('01','02',90),
-> ('01','03',99),
-> ('02','01',70),
-> ('02','02',60),
-> ('02','03',80),
-> ('03','01',80),
-> ('03','02',80),
-> ('03','03',80),
-> ('04','01',50),
-> ('04','02',30),
-> ('04','03',20),
-> ('05','01',76),
-> ('05','02',87),
-> ('06','01',31),
-> ('06','03',34),
-> ('07','02',89),
-> ('07','03',98);
Query OK, 18 rows affected (0.01 sec)
Records: 18 Duplicates: 0 Warnings: 0
缘友一世: 那我也不知道了
m0_72747258: 没用咋办
缘友一世: B站有大佬的视频,可以去那里看看操作
LL2845242615: 找不到
缘友一世: 直接使用360吧,1回头删除干净就可以,只能以毒攻毒了