SQLite浏览器“修改表后检查外键时出错,更改将被恢复,”

l7mqbcuq  于 2023-05-07  发布在  SQLite
关注(0)|答案(1)|浏览(261)

我有一个数据库,表albumssongs如下:
相册:

歌曲:

我想让表相关,wtih albums是父,songs是子,所以我试图把songs中的albumsId列变成外键

,但它总是给我前面提到的“表修改后检查外键时出错”。我在两个表中都有几个测试条目,可能是这种情况吗?

vd8tlhqk

vd8tlhqk1#

如果您转到Edit Pragmas并取消选中Foreign keys选项,则数据库将停止检查外键约束。这将允许您添加外键约束而不会生成错误-然后您可以重新打开外键杂注以启用对任何未来修改的检查(例如行插入)。
如果你这样做,你仍然需要检查你现有的表/数据是否满足外键约束。为此,请选择ToolsForeign-Key Check。这将生成一个表,显示任何外键冲突,如果可以的话,您应该修复这些冲突。

相关问题