如何插入带有约束循环的火鸟表?
How to insert into firebird tables with constraint loops?
我在 firebird 中有包含循环的表。我还没有找到插入数据的好方法,其中 Table A 对 Table B 和 Table B FK 到 Table A。
这不是一个异常的数据库问题,但我无法让 firebird 让我插入行。这是我的信念:
firebird 有延迟约束检查的标志,但它出现
它们没有作为功能实现(真的吗?)。
Firebird 3.0 文档似乎没有提到延迟约束
检查作为功能添加(它会在那里吗?)
据我所知,您不能将两行插入到两个表中
在单个事务中解决问题。 (这是
是吗?)
是在插入过程中删除所有约束的唯一选择吗? (不太棒)
我建议使用非必填字段,插入没有 FK 值的 2 行,然后更新它们。
如果您想在单个语句中完成,则必须可以使用存储过程或 "execute block"
此致
我在 firebird 中有包含循环的表。我还没有找到插入数据的好方法,其中 Table A 对 Table B 和 Table B FK 到 Table A。
这不是一个异常的数据库问题,但我无法让 firebird 让我插入行。这是我的信念:
firebird 有延迟约束检查的标志,但它出现 它们没有作为功能实现(真的吗?)。
Firebird 3.0 文档似乎没有提到延迟约束 检查作为功能添加(它会在那里吗?)
据我所知,您不能将两行插入到两个表中 在单个事务中解决问题。 (这是 是吗?)
是在插入过程中删除所有约束的唯一选择吗? (不太棒)
我建议使用非必填字段,插入没有 FK 值的 2 行,然后更新它们。
如果您想在单个语句中完成,则必须可以使用存储过程或 "execute block"
此致