我已经设置了PRAGMA foreign_keys=ON;
我正在尝试删除sqlite3表中的一些记录,但是它显示错误:约束失败
sqlite> delete from auth_user where id = 110;
Error: constraint failed
如果PRAGMA foreign_keys
关闭,它可以正常工作。数据库有很多表格,错误信息非常模糊。我认为其他数据库系统会在我们尝试删除时列出引用主键的表格。
有没有高效的方法可以找到所有引用特定主键id=110的表格?
架构:
CREATE TABLE "auth_user" (
"id" integer NOT NULL PRIMARY KEY,
"username" varchar(30) NOT NULL UNIQUE,
"first_name" varchar(30) NOT NULL,
"last_name" varchar(30) NOT NULL,
"email" varchar(75) NOT NULL,
"password" varchar(128) NOT NULL,
"is_staff" bool NOT NULL,
"is_active" bool NOT NULL,
"is_superuser" bool NOT NULL,
"last_login" datetime NOT NULL,
"date_joined" datetime NOT NULL
);