有没有办法将 SQL Server 数据库图表复制到另一台服务器?
我找到了 this并对其进行了粗略的修改以仅复制一张图表:
INSERT INTO dbB.dbo.sysdiagrams
SELECT [name],[principal_id],[version],[definition]
FROM dbA.dbo.sysdiagrams
Where name = 'MyDiagramName'
但我需要将它复制到另一台服务器(开发到生产)。
我不想创建链接服务器来执行此操作。 ( 更新说明 ) 背后的原因是我想在升级脚本中包含图表。我对数据库进行了更改以支持新版本(新表等),并且我希望图表成为升级脚本的一部分。所以最好我能把它放在一个 SQL 脚本中。如果之后有一个单独的文件要手动导入,它可以完成这项工作,但不是最好的。
所以我需要以某种方式将图表定义“保存”到一个文件中,以便在另一台服务器上恢复它。
最佳答案
刚刚找到 this solution .
在本文中,有创建存储过程的代码,该存储过程生成 SQL Server 脚本以重新创建图表。因此,您只需将存储过程的输出保存在一个 .SQL 文件中,然后在另一台服务器上运行它。
问题是将 Varbinary 转换为十六进制的字符串(Varchar),以便能够在插入/更新查询中使用它。但它在链接中得到了很好的解释......
关于SQL Server 2005,如何将数据库图表复制到另一台服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3310137/