我对SQL仍然比较陌生。我正在更新数据库,并且遇到了此消息。问题是,我已经执行了此插入,但不得不删除它,因为我三次输入相同的地址,而不是一次。MySQL工作台:错误代码1452.无法添加或更新子行:外键约束失败
任何人可以帮助我,我不明白什么是错的:
> insert into ort
(plz, name) values
('4900', 'Langenthal')
;
>insert into adresse
(strasse, strassennr, ortID) values
('Eisenbahnstrasse', '7', (select oid from ort where name = 'Langenthal' and plz='4900'))
;
>
insert into liegenschaft
(liegenschafttypid, adressid) values
((select ltypid from liegenschaft_typ where name = 'Wohnhaus/Firma'), (select oid from ort where name = 'Langenthal' and plz = '4900'))
;
我不断收到此消息:
> 0 16 14:09:25 insert into liegenschaft (liegenschafttypid, adressid) values
((select ltypid from liegenschaft_typ where name = 'Wohnhaus/Firma'), (select oid from ort where name = 'Langenthal' and plz = '4900')) Error Code: 1452. Cannot add or update a child row: a foreign key constraint fails (`parking`.`liegenschaft`, CONSTRAINT `FK_adresse` FOREIGN KEY (`adressID`) REFERENCES `adresse` (`AID`)) 0.015 sec
当它没有找到出现这种错误在主键表中提供了外键。您的表'liegenschaft'中的插入查询中的一个嵌套选择查询必须为null或不匹配。 – ARr0w