如何暂时禁用Firebird 2.1中的表中的所有约束?

时间:2009-06-30 13:13:53

标签: sql constraints firebird firebird2.1

我想禁用所有外键约束并在之后重新启用它们,有没有办法做到这一点?

我知道SQLServer允许这样做,但Firebird呢?

2 个答案:

答案 0 :(得分:3)

在Firebird中无法禁用AFAICT外键,最高可达2.1 你必须放弃并重新创建它们 在Devshed上有一个similar thread

答案 1 :(得分:0)

我想唯一的方法是放弃并稍后重新创建它们。由于约束不是数据,因此您实际上不会丢失数据库中的任何信息,因此它是一种无害的操作(前提是您保留脚本以便以后重新创建它们)。

SVN存储库中的FlameRobin版本具有为所选表列依赖性自动生成这些DROP和CREATE脚本的选项。最后一个正式版本对整个表格具有相同的选项,因此可能对您有所帮助。但是,没有选择为整个数据库执行此操作。也许其他一些管理员。工具有这个功能。