2012-10-24 97 views
1

我无法使用Navicat从sqlite数据库中删除记录。错误写着:'错误约束失败”无法使用Navicat从sqlite数据库中删除记录

我得到同样的事情,如果我尝试删除使用SQL命令控制台:

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

任何想法,为什么这可能发生。

感谢您的帮助

回答

1

它看起来像这样表都有一个作为另一个表中的FK引用的字段,所以SQLite的说法

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

是的,你是对的。另一个catalogue_myTable表中有一个myTable_id。我是否必须先删除该参考?谢谢:) – hanumanDev

+2

是的......先删除那个引用。 –

1

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

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