Bug*_*pen 2 sqlite foreign-keys sqlitemanager
以下是创建表的查询:
CREATE TABLE "FacilityRating"(
"FacilityRatingId" INTEGER PRIMARY KEY NOT NULL,
"Stars" VARCHAR,
"Facility_FacilityId" INTEGER,
"User_UserId" INTEGER,
FOREIGN KEY (Facility_FacilityId)
REFERENCES Facility(FacilityId)
ON DELETE CASCADE
ON UPDATE CASCADE,
FOREIGN KEY (User_UserId)
REFERENCES User(UserId)
ON DELETE CASCADE
ON UPDATE CASCADE
)
Run Code Online (Sandbox Code Playgroud)
然而,当我在插入新行Facility_FacilityId和User_UserId一些随机数,SQLite不给错误,但增加了也无妨.
这是一个快照:

有什么暗示这里发生了什么?我正在使用SQLite Manager,一个Mozilla Firefox附加组件
该文件说:
应用程序必须在运行时使用PRAGMA foreign_keys命令启用外键约束.例如:
Run Code Online (Sandbox Code Playgroud)sqlite> PRAGMA foreign_keys = ON;默认情况下禁用外键约束(为了向后兼容),因此必须为每个数据库连接单独启用.