8

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

在多对多关系(带有额外字段)中,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.

我的关系模型已适当地标记了外键。

4

1 回答 1

15

默认情况下, SQLite 不强制执行外键约束(主要是为了向后兼容)。

要启用它,您必须执行

PRAGMA foreign_keys = 1

连接到数据库后。

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

于 2013-06-20T12:31:12.817 回答