【发布时间】:2014-07-12 02:04:24
【问题描述】:
我不明白。有人可以在这里解释我的失败吗:
CREATE TABLE IF NOT EXISTS `mytable`.`Employee_Service` (
`Employee_Service_Id` INT NOT NULL,
`Created_At` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`Updated_At` TIMESTAMP NULL,
PRIMARY KEY (`Employee_Service_Id`),
CONSTRAINT `Employee`
FOREIGN KEY (`Employee_Service_Id`)
REFERENCES `mytable`.`Employees` (`Employee_Id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `Service`
FOREIGN KEY (`Employee_Service_Id`)
REFERENCES `mytable`.`Services` (`Service_Id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
日志文件说:
Error 1022: Can't write; duplicate key in table 'employee_service'
要了解我想要做什么: 表“Employee_Service”是表“Employees”和“Services”之间的连接。在该表中,我想存储“Employees”表中的“Employee_Id”并将其与“Services”表中的“Service_Id”连接起来。所以我可以得到一个员工有服务的关系。 但是我的桌子有什么问题,尤其是外键???
【问题讨论】:
-
检查您的其他表,看看您是否使用了相同的约束名称
Employee或Service。
标签: mysql