我创建了一个由实体条目和关键字组成的简单数据库关系。任何条目都可以有 n 个关键字,但每个关键字在关键字表中只能存在一次。为了实现这一点,我创建了三个表:entry、keywords 和 entries2keywords。我想保持语义完整性,因此 DELETE 或 UPDATE 过程应该传播到相关表。数据库设置的另一个要求是可重入,这意味着我可以重新运行创建脚本,在这种情况下,所有数据都应该被简单地删除,如 DROP TABLE。
但是,我当前的脚本在重新运行时失败并出现 #1217 错误:
#1217 - Cannot delete or update a parent row: a foreign key constraint fails
我在这里链接到数据库脚本,因为它太大而无法粘贴。