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

关于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' 


慕田峪4524236
浏览 954回答 3
3回答

陪伴而非守候

在MySQL中更改外键名称。数据库表中不能具有相同的外键名称。检查所有表和所有外键,并避免使用两个具有相同确切名称的外键。

ibeautiful

从成功解决的两个链接和命名约定这两个方面,我轻松地解决了我所遇到的相同问题。即,对于外键名称,给定为fk _colName_ TableName。该命名约定是明确的,并且还会使数据库模型中的每个ForeignKey都唯一,并且您将永远不会收到此错误。错误1022:无法写入;表中的重复键
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

MySQL