我正在尝试组合一个解决方案,其中我有一堆包含我的模式创建的脚本文件。类似于 Visual Studio 的 SQL 项目,但适用于 Postgres。
我的问题是文件不一定会以正确的顺序读取,例如第一个文件/脚本/表读取依赖于第二个文件/脚本/表。
我希望有某种方法可以禁用检查以查看引用的表/列是否确实存在,创建所有表,然后重新启用检查。
我正在运行 9.2.24
我的第二个解决方案是以这样一种方式对文件进行排序,即它只在依赖项已经存在时创建一个表,但我上面提到的方法将是首选。
我正在尝试组合一个解决方案,其中我有一堆包含我的模式创建的脚本文件。类似于 Visual Studio 的 SQL 项目,但适用于 Postgres。
我的问题是文件不一定会以正确的顺序读取,例如第一个文件/脚本/表读取依赖于第二个文件/脚本/表。
我希望有某种方法可以禁用检查以查看引用的表/列是否确实存在,创建所有表,然后重新启用检查。
我正在运行 9.2.24
我的第二个解决方案是以这样一种方式对文件进行排序,即它只在依赖项已经存在时创建一个表,但我上面提到的方法将是首选。
不可能。创建外键时,外键约束的源和目标必须存在。
该问题的通常解决方案是将所有外键放在一个单独的脚本中,该脚本在创建所有表后运行。不与每张桌子一起。