如何插入带有约束循环的firebird表?

时间:2015-02-05 01:28:18

标签: firebird

我在firebird中有包含循环的表。我还没有找到一个很好的方法来插入数据,其中表A 有一个FK到表B 表B 有一个FK到表A

这不是一个不寻常的数据库问题,但我无法让firebird插入行。以下是我的看法:

  1. firebird有延迟约束检查的标志,但它出现了 它们没有实现为功能(是吗?)。

  2. Firebird 3.0 Docs似乎没有提到延迟约束 检查作为功能添加(是否会在那里?)

  3. 据我所知,你不能在两张表中插入两行 在单个交易中解决问题。 (这是 真?)

  4. 是否在插入过程中删除所有约束的唯一选项? (不太棒)

1 个答案:

答案 0 :(得分:1)

我建议使用非必填字段,插入没有FK值的2行,然后更新它们。

如果要在单个语句中进行,则必须使用存储过程或"执行块"

祝你好运