1
Amy 原创整理|资料核验:2026-10-29
SQLite 官方文档提醒,外键约束需要在每个数据库连接上确认启用状态,不能仅凭建表语句里有 REFERENCES 就假定约束正在执行。
教学检查:先用 PRAGMA foreign_keys; 查看状态,在支持外键的构建中返回 1 表示启用;需要开启时可在事务开始前执行 PRAGMA foreign_keys = ON;。在多语句事务中途切换不会生效。
Amy 建议把这项检查放在连接初始化阶段,并用一条违反关联关系的测试数据验证预期。若命令没有返回状态,还应检查所用 SQLite 版本和编译选项,不要直接把缺失结果当成“已经开启”。