SQLite是否支持参照完整性?

时间:2013-06-20 12:17:17

标签: django django-models sqlite referential-integrity

我有一个配置为使用SQLite的Django Web服务器。

在多对多关系(带有额外字段)中,Django强迫我使用关系模型来建立两个对象之间的关系。但我能够在相关表中尚不存在的对象之间创建关系。

例如:

I have table1 and table2 which are related via table12.
In table1, there is just one object called A.
In table2, there is just one object called X.
I can create a record in table12 that depict a relationship between A & Y; even though Y doesn't exist in table2.

我的关系模型已正确标记了外键。

1 个答案:

答案 0 :(得分:11)

默认情况下,SQLite不会强制执行foreign key constraints(主要是向后兼容)。

要启用它,您必须执行

PRAGMA foreign_keys = 1

连接到数据库后。

有关详细信息,请参阅有关PRAGMA foreign_keys的手册。