SQLite-外键不';t工作(是,已启用)
由于某种原因,我无法使用外键 尽管“ad_ID”表为空,但任何插入到主_规范的操作都将通过 编辑:由于某些原因,在使用DB Browser时插入将不会通过,但我的python脚本会正确地通过该约束,并且能够保存数据SQLite-外键不';t工作(是,已启用),sqlite,foreign-keys,Sqlite,Foreign Keys,由于某种原因,我无法使用外键 尽管“ad_ID”表为空,但任何插入到主_规范的操作都将通过 编辑:由于某些原因,在使用DB Browser时插入将不会通过,但我的python脚本会正确地通过该约束,并且能够保存数据 主表: CREATE TABLE "ad_ids" ( "ad_id" INTEGER, "ad_url" TEXT, PRIMARY KEY("ad_id") ) 二
主表:
CREATE TABLE "ad_ids" (
"ad_id" INTEGER,
"ad_url" TEXT,
PRIMARY KEY("ad_id")
)
二级表:
CREATE TABLE "primary_specs" (
"ad_id" INTEGER,
"version" TEXT,
"year" INTEGER,
PRIMARY KEY("ad_id"),
FOREIGN KEY("ad_id")
REFERENCES ad_ids("ad_id")
)
返回:
id seq table from to on_update on_delete match
0 0 ad_ids ad_id ad_id NO ACTION NO ACTION NONE
返回1显然
PRAGMA foreign\u keys=ON代码>应用于连接,而不是数据库。是的,必须在每次打开数据库时启用,如所述。
id seq table from to on_update on_delete match
0 0 ad_ids ad_id ad_id NO ACTION NO ACTION NONE
PRAGMA foreign_keys