微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

错误 1452:无法在 MySQL 中添加或更新子行

如何解决错误 1452:无法在 MySQL 中添加或更新子行

我有表医生和部门。医生和科室的M:1关系意味着医生可以在一个科室工作,而科室可以有多个医生。因此,在医生表中引用了部门。具体的医生也是科室主任。因此,在 deprartment 中引用了医生的 emp_no(医生从超类员工中继承了 emp_no)。

Here are the tables

我有这个部门的插入语句。

INSERT INTO department (dept_name,Doctor_emp_no) 
VALUES ('Cardiology',(SELECT emp_no 
                      FROM employee WHERE 
                     specialty = 'Interventional Cardiologist' 
                     AND f_name = 'Oliver' and l_name = 'Adams'));

然而,它给了我

错误代码:1452。无法添加或更新子行:外键约束失败 (hsp.doctor,CONSTRAINT fk_Doctor_department1 FOREIGN KEY (department_dept_no) REFERENCES department (dept_no))

我假设即使医生将 emp_no 作为主键,插入也是不可能的,因为我在医生表中没有记录。但是我需要在部门中插入数据才能在医生表中插入数据。

在这种情况下我该怎么办?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。