【问题标题】:SQL Server table names list in sequenceSQL Server 表名按顺序列出
【发布时间】:2020-10-06 09:26:59
【问题描述】:

我必须从数据库中导出所有表,然后再将它们导入回来。我通过 SQLAzureMW 工具生成了一个bcp 命令,该工具以某种方式以正确的方式对表进行排序,以避免 FK 依赖问题。我不认为这个工具可以选择通过 cmd 或其他方式生成它们,而且我无法在我的场景中使用 UI。那么问题是我可以通过 T-SQL 获取按顺序排列的表列表吗?

我也无法使用备份/恢复方法,所以我正在寻找其他方法来完成这项任务。 BCP 工作得非常快,我更喜欢它,但我不想硬编码表的顺序,如果有人添加具有依赖关系的新表,脚本将不再工作。

【问题讨论】:

  • 与其尝试构建自己的解决方案,不如创建备份或使用 DACPAC?
  • 因为我必须用脚本来做这件事,它将成为 CI/CD 的一部分,我无法使用 UI。 DACPAC 我不确定是否可以通过 TSQL 生成然后执行?
  • “因为我必须用脚本来做” 为什么? 为什么 必须用sql脚本呢?

标签: sql-server tsql bcp


【解决方案1】:

这个存储过程:

EXEC sp_msdependencies @flags = 8

帮助我并给了我正确的顺序,然后我只是通过 bcp 和正确的顺序进行了导出/导入,一切都按预期工作。

【讨论】:

    猜你喜欢
    • 2013-10-04
    • 2011-05-03
    • 2016-10-03
    • 1970-01-01
    • 2013-05-12
    • 1970-01-01
    • 2013-09-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多