MySql-无法添加或更新子外键约束失败

MySql-无法添加或更新子外键约束失败,mysql,Mysql,我有两张桌子,“预订”和“已预订”。我想向isBooked表添加值。但我不断收到一个错误“无法添加或更新子外键约束失败” 有人能告诉我为什么在尝试向“isBooked”插入值时出现此错误吗 您的isbooked表在引用其他三个表时具有外键约束: foreign key (RunID) references Run(RunID), foreign key (DogID) references Dog(dogID), foreign key (BookingID) references Bookin

我有两张桌子,“预订”和“已预订”。我想向isBooked表添加值。但我不断收到一个错误“无法添加或更新子外键约束失败”


有人能告诉我为什么在尝试向“isBooked”插入值时出现此错误吗

您的isbooked表在引用其他三个表时具有外键约束:

foreign key (RunID) references Run(RunID),
foreign key (DogID) references Dog(dogID),
foreign key (BookingID) references Booking(BookingID)
此约束确保无论您输入什么值,它都需要匹配引用表中的一行


因此,出现此错误的原因是,在一个(或所有)引用表中没有匹配的记录。首先,您需要使用插入中使用的ID添加Run、Dog和Booking,然后才能将记录添加到iBooked。

您正在尝试在iBooked中插入引用的Booking表中不存在的值。仅凭FK的插入尝试违反了Run、Dog或Booking约束(至少1),您就应该获得更高的票数@DrewPierce,是的,它违反了其中一个,但用户只显示了两个表!即使他向我们展示了3个父表,我们也看不到3中缺失的数据,这是你的答案好,清晰,完整,时尚!
foreign key (RunID) references Run(RunID),
foreign key (DogID) references Dog(dogID),
foreign key (BookingID) references Booking(BookingID)