无法使用Navicat从sqlite数据库中删除记录

时间:2012-10-24 09:51:49

标签: database sqlite navicat

我无法使用Navicat从sqlite数据库中删除记录。错误内容为:“错误约束失败”

如果我尝试使用sql命令使用控制台删除,我会得到同样的结果:

sqlite> delete from myTable where sort = '965';
constraint failed
sqlite> 

任何想法为什么会发生这种情况。

感谢您的帮助

2 个答案:

答案 0 :(得分:1)

看起来这个表有一个Field,在另一个表中被引用为FK,所以SQlite说

"I can,'t delete it, its inuse in another table"

答案 1 :(得分:1)

使用.schema shell的sqlite3命令显示所有表定义。 然后,您可以看到myTable上的哪个约束或子表阻止您删除。

如果另一个表中存在外键约束,则必须先删除该表中引用965记录的所有记录,然后才能删除记录本身。