Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQLite-外键不';t工作(是,已启用)_Sqlite_Foreign Keys - Fatal编程技术网

SQLite-外键不';t工作(是,已启用)

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") ) 二

由于某种原因,我无法使用外键

尽管“ad_ID”表为空,但任何插入到主_规范的操作都将通过

编辑:由于某些原因,在使用DB Browser时插入将不会通过,但我的python脚本会正确地通过该约束,并且能够保存数据


主表:

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