当我在CREATE命令中创建直接定义FK的表并且目标表尚不存在时,会导致错误。
如果目标表存在,是否可以以某种方式暂停?
我的DBMS是Postgres。
示例(伪代码):
create table "Bar"
foo_id integer FK of "Foo"."id",
someattr text;
create table "Foo"
id integer;
示例顺序错误,这就是为什么它不会运行。
我正在尝试根据许多sql文件中的定义批量重新创建数据库。
答案 0 :(得分:2)
当我在CREATE命令中创建直接定义FK的表并且目标表尚不存在时,会导致错误。
如果目标表存在,是否可以以某种方式暂停?
解决这个问题的最佳方法很可能是:
答案 1 :(得分:0)
蛮力总是一种选择。
继续运行DDL脚本,直到运行没有错误。
更优雅需要按顺序构建脚本。
添加存在检查是可能的,但我对postgres元数据不太熟悉。