如何在具有外键的表中插入数据? 我试过这个
INSERT INTO City (name, country, population) VALUES ("NewZelans", "Auckland", "80000");
然而它给了我一个错误
#1452 - Cannot add or update a child row: a foreign key constraint fails (
stu_nall596_compsci_280_c_s2_2014
.city
, CONSTRAINT city_ibfk_2
FOREIGN KEY (country
) REFERENCES Country
(id
))
并且在更新字段方面,如何做到这一点?
答案 0 :(得分:2)
忽略" NewZelans"不是一个城市,而且"奥克兰"是一个城市而不是一个国家/地区,如果您希望您的插入成功,则需要在Country
中插入一行id
"Auckland"
,然后约束将允许您在该City
表中为该国家/地区的城市插入新行。
我不知道你的架构是什么样的,但这是一个粗略的例子;
INSERT INTO Country (id, name) VALUES (123, 'New Zealand');
INSERT INTO City (name, country, population) VALUES ('Auckland', 123, 80000);
请参阅id
表格中123
的{{1}}必须先存在Country
表中,然后才能在City
表中引用它。