0

我无法通过外键绑定下属(表管理员)和主表(部门)。它显示以下消息:

执行:

ALTER TABLE `grocery_supermarket_manager`.`administrator` 
ADD CONSTRAINT `AdministratorDepartment_FK`
  FOREIGN KEY (`id_department`)
  REFERENCES `grocery_supermarket_manager`.`department` (`id_department`)
  ON DELETE CASCADE
  ON UPDATE CASCADE;

操作失败:将 SQL 脚本应用到数据库时出错。

ERROR 1452: Cannot add or update a child row: a foreign key constraint fails (`grocery_supermarket_manager`.`#sql-9ac_8`, CONSTRAINT `AdministratorDepartment_FK` FOREIGN KEY (`id_department`) REFERENCES `department` (`id_department`) ON DELETE CASCADE ON UPDATE CASCADE)
SQL Statement:
ALTER TABLE `grocery_supermarket_manager`.`administrator` 
ADD CONSTRAINT `AdministratorDepartment_FK`
  FOREIGN KEY (`id_department`)
  REFERENCES `grocery_supermarket_manager`.`department` (`id_department`)
  ON DELETE CASCADE
  ON UPDATE CASCADE

列名:“id_department”表“部门”有:

  • 数据类型 - INT(10)
  • 存储:主键、非空、唯一、无符号、自动递增。

列名:“id_department”表“管理员”有:

  • 数据类型 - INT(10)
  • 存储:非空,无符号。
4

1 回答 1

1

确保表中的当前数据满足您添加的约束。看起来您的管理员的部门 ID 无效。

于 2016-12-13T08:43:07.463 回答