设想:
DELETE FROM table_x WHERE id not in (1,2,3,4)
回复:
表“table_x”上的更新或删除违反了表“table_y”上的外键约束“fk1” 详细信息:键(table_x_id)=(7)仍然从表“table_y”中引用。
- 清空所有记录的“table_y”
- FK 未显示在“table_y”的 FK 列表中
- 完全删除表'table_y'
我们仍然收到此消息,因此假设表中某处存在 rouge 记录pg_constraints
。寻找约束“fk1”,我们找到两条记录并删除它们。
询问:
delete from pg_constraint where conname = 'fk1'
现在我们得到这个错误:
[Err] 错误:约束 868152 的缓存查找失败
在这一点上,我相当肯定我们需要清理一些记录,但不确定如何 - 任何人都有这方面的经验可以为我指明正确的方向吗?