我正在开发一个适用于java和MySQL的项目。 我的问题是关于MySQL部分。
我在数据库上工作,我试图测试一切,但我无法实现任何数据。
我总是得到一个错误:
错误代码:1452。无法添加或更新子行:外键约束失败(poker
。inschrijving
。CONSTRAIN inschrijving_ibfk_1
FOREIGN KEY(Lid
)REFERENCES {{1 }(toernooi
)ON DELETE CASCADE ON UPDATE CASCADE)
这是我的数据库:
Tid
我希望有人可以帮助我! 谢谢!
答案 0 :(得分:0)
你有一个有趣的外键结构:Iid同时指向两个表。添加新的Inschrijving.Iint时,两个引用的表中必须存在具有相同Iid值的行!
CREATE TABLE Inschrijving (
Iid int(12) NOT NULL,
!!
FOREIGN KEY (Iid) REFERENCES Toernooi (Tid) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (Iid) REFERENCES MasterClass (Mid) ON DELETE CASCADE ON UPDATE CASCADE,
答案 1 :(得分:0)
外键
FOREIGN KEY (Iid) REFERENCES Toernooi (Tid)
FOREIGN KEY (Iid) REFERENCES MasterClass (Mid)
在你的表中,Inschrijving的定义似乎引用了错误的字段或错误的表。 Iid已经有了一个外键。这些参考文献在语义上也没有意义。