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

错误1022-无法写入;表中的重复键

错误1022-无法写入;表中的重复键

慕田峪4524236 2019-11-13 14:25:53
关于create table命令上的重复键,我收到1022错误。看完查询后,我不知道在哪里进行复制。有人可以看到吗?SQL query:-- ------------------------------------------------------- Table `apptwo`.`usercircle`-- -----------------------------------------------------CREATE TABLE IF NOT EXISTS  `apptwo`.`usercircle` ( `idUserCircle` MEDIUMINT NOT NULL , `userId` MEDIUMINT NULL , `circleId` MEDIUMINT NULL , `authUser` BINARY NULL , `authOwner` BINARY NULL , `startDate` DATETIME NULL , `endDate` DATETIME NULL ,PRIMARY KEY (  `idUserCircle` ) ,INDEX  `iduser_idx` (  `userId` ASC ) ,INDEX  `idcategory_idx` (  `circleId` ASC ) ,CONSTRAINT  `iduser` FOREIGN KEY (  `userId` ) REFERENCES  `apptwo`.`user` (`idUser`) ON DELETE NO ACTION ON UPDATE NO ACTION ,CONSTRAINT  `idcategory` FOREIGN KEY (  `circleId` ) REFERENCES  `apptwo`.`circle` (`idCircle`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = INNODB;MySQL said: Documentation#1022 - Can't write; duplicate key in table 'usercircle' 
查看完整描述

3 回答

?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

在MySQL中更改外键名称。数据库表中不能具有相同的外键名称。

检查所有表和所有外键,并避免使用两个具有相同确切名称的外键。


查看完整回答
反对 回复 2019-11-13
?
ibeautiful

TA贡献1993条经验 获得超5个赞

从成功解决的两个链接和命名约定这两个方面,我轻松地解决了我所遇到的相同问题。即,对于外键名称,给定为fk _colName_ TableName。该命名约定是明确的,并且还会使数据库模型中的每个ForeignKey都唯一,并且您将永远不会收到此错误。


错误1022:无法写入;表中的重复键


查看完整回答
反对 回复 2019-11-13
  • 3 回答
  • 0 关注
  • 947 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信