【发布时间】:2014-03-25 05:44:55
【问题描述】:
我正在尝试将我的 ERD 转发到工作台 6.0 中的方案中,但我收到了这个错误。我检查了所有列类型,它们是相同的。我在这里查看了类似的问题,但仍然找不到答案。这是错误日志:
xecuting SQL script in server
ERROR: Error 1215: Cannot add foreign key constraint
-- -----------------------------------------------------
-- Table `proj`.`employee`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `proj`.`employee` (
`employee_id` INT NOT NULL,
`position_id` INT NOT NULL,
PRIMARY KEY (`employee_id`),
CONSTRAINT `fk_employee_employee_history1`
FOREIGN KEY (`employee_id`)
REFERENCES `proj`.`employee_history` (`employee_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_employee_equipment_rentals1`
FOREIGN KEY (`employee_id`)
REFERENCES `proj`.`equipment_rentals` (`handling_employee_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_employee_scheduled_trips1`
FOREIGN KEY (`employee_id`)
REFERENCES `proj`.`scheduled_trips` (`leader`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_employee_scheduled_trips2`
FOREIGN KEY (`employee_id`)
REFERENCES `proj`.`scheduled_trips` (`assistant`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
SQL script execution finished: statements: 8 succeeded, 1 failed
Fetching back view definitions in final form.
Nothing to fetch
【问题讨论】:
-
不仅架构必须正确,任何现有数据也必须通过约束。如果表中有任何数据适用于新约束,则必须满足约束条件。我敢打赌你有一些孤儿数据。
标签: mysql foreign-keys mysql-workbench workbench