我会直言不讳。 我正在现有数据库上构建一个网站,该网站没有关系以保持一致。我现在正试图增加关系以解决这个问题。
简化为: 我有一个库存物品表,位置表和零件表。
stock items表使用可在其他表(外键)中找到的ID。此表使用多列作为主键(包括locationid和partnr +其他一些) 我成功地在库存项目表中的位置ID和位置表之间添加了关系。 当我尝试添加库存项目表和零件表之间的关系时,会出现问题:
ALTER TABLE语句与FOREIGN KEY约束冲突(在parts表,partnumber表中)。
我检查了约束,没有人在那里。 我试图寻找对未存在的部分的引用,但我本来可以写一个错误的查询...
任何人都可以帮我弄清楚如何解决这个问题吗?
答案 0 :(得分:1)
是的,听起来你写了一个错误的查询,并且引用了不存在的部分。
SELECT partnumberid,(其他字段)
来自stockitems
在哪里partnumberid NOT IN(SELECT partnumberid FROM parts)
或
SELECT partnumberid,(otherfields)
来自stockitems si
LEFT JOIN部分p ON si.partnumberid = p.partnumberid
在哪里p.partnumberid IS NULL