【发布时间】:2012-11-09 20:08:17
【问题描述】:
有时我在使用 BD At Work 时遇到问题。通常是当我尝试在会话关闭的情况下恢复或更新 Java 中的表时(著名的 LazyInitializatioException )。 最后,有时问题是存在指向不存在的主键索引值的外键。发生这种情况时,惰性实体无法正确加载。
那么,有没有办法检查表数据是否将外键索引设置为不存在的主键?
对于单个列会很容易。但我的意思是对于大约有 10 或 20 个外键的表。
我正在使用 postgres。如果那是一个特别针对它的答案,那就更好了。 =]
对不起,我的英语不好(不是母语)。
【问题讨论】:
-
如果在两个表之间定义了外键约束,那么绝对no可以将其设置为不存在的主键。这正是外键的意义所在。这听起来像你是不在数据库中使用真正的外键约束 - 你应该
-
我不会说不。你可以禁用触发器;-)
标签: sql postgresql foreign-keys primary-key