【发布时间】:2022-01-04 15:03:09
【问题描述】:
我想将一个数据库从我们的测试服务器移动到我的本地服务器。我没有备份和恢复的选项,因为我没有权限。所以我决定使用生成脚本选项为数据库创建所有脚本,然后将数据库移动到我的本地服务器。我面临的问题是这些表中的大多数都有外键关系,当我生成脚本时,它们是按字母顺序生成的,因此我的脚本失败了。有没有办法生成基于外键关系对齐表的脚本?如果没有,还有其他方法可以实现吗?
【问题讨论】:
-
您是否考虑过在第二遍中单独应用外键?
-
我没有在“生成脚本”向导中看到创建没有外键的表的选项。我错过了什么吗?
-
你最好找到一个 SQL 脚本来生成你的对象——谷歌上有很多例子。最好的方法是为您执行此操作的工具,我使用 Redgate SQLCompare,它会为您完美执行此操作。
-
我很惊讶 SSMS 没有按依赖顺序生成东西,但是......在工具 > 选项 > 脚本选项 > 表/视图选项 > 脚本外键 = true/false 中。您必须只使用外键创建第二个脚本,这可能是手动操作。
-
非常感谢你们,伙计们!我会试试你的建议。
标签: sql sql-server database tsql