【问题标题】:Error 1215: cannot add foreign key constraint in my SQL错误 1215:无法在我的 SQL 中添加外键约束
【发布时间】:2015-04-15 13:10:00
【问题描述】:

我的父表是gym_member,我的子表是medical_history。

gym_member 表中有两个主键 gm_id 和 student_id。

在病历表中有一个主要是 mh_id,我想添加一个外键是 student_id,但它显示了这个错误。

ALTER TABLE `hct_gym`.`medical_history` 

ADD CONSTRAINT `student_id`

  FOREIGN KEY (`student_id`)

  REFERENCES `hct_gym`.`gym_member` (`student_id`)

  ON DELETE NO ACTION

  ON UPDATE NO ACTION;

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

错误 1215:无法添加外键约束

SQL 语句:

ALTER TABLE `hct_gym`.`medical_history` 

ADD CONSTRAINT `student_id`

  FOREIGN KEY (`student_id`)

  REFERENCES `hct_gym`.`gym_member` (`student_id`)

  ON DELETE NO ACTION

  ON UPDATE NO ACTION

我想知道问题出在哪里?

【问题讨论】:

  • 列hct_gym.gym_member.student_id是主键还是其他键?
  • jarlh - 是的,此列是主键

标签: mysql sql foreign-keys constraints workbench


【解决方案1】:

检查列medical_history.student_id 是否包含值 不包含在gym_member.student_id

这将与创建之前/期间的约束相矛盾。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-02
    • 2018-04-28
    相关资源
    最近更新 更多