在提交之前检查延迟约束

时间:2015-11-05 03:00:39

标签: postgresql transactions constraints

有没有办法在提交之前检查所有延迟约束

这是我的情况。我的系统导入相互引用的数据行。可以或可以不以正确的顺序导入行以引用现有行。在某些情况下,行甚至具有循环引用,因此在为每个新记录维护参照完整性时,无法导入它们。

到目前为止,没问题。为这种情况创建了延迟约束。

这就是问题所在。在导入所有数据之后,但在提交之前,我需要对数据进行更多检查。这些检查仅在导入所有数据并检查外键后才起作用。

所以我想做的就是这样:

  1. 导入数据
  2. 检查所有约束
  3. 再进行一些检查
  4. 根据需要提交或回滚
  5. 从我(希望不准确)的文档阅读中,检查延迟约束的唯一方法是提交或运行我自己的自定义约束检查器。两者都不是一个非常有吸引力的选择。

    么?

0 个答案:

没有答案