数据库图表的脚本创建

J.D*_*.D. 2 sql-server t-sql database-diagrams

是否可以使用 T-SQL 编写数据库图表的创建脚本?

如果不是,当您使用数据库图表设计器保存/编辑图表时(它是使用 PowerShell 还是其他某种语言来保存和加载这些类型的对象),它在做什么?

我问是因为我希望自动创建数据库图表。我有一个我的开发人员编写的工具(在 C# 中),它根据它对我们供应商数据所做的一些 Web 服务调用的响应自动创建表及其外键关系。

Han*_*non 5

数据库图表对象确实是使用 T-SQL 创建的。通过使用数据库图表工具对开发 SQL Server 运行 T-SQL 跟踪,您可以查看 SSMS 在创建、编辑和保存图表时的作用。

启用了 Database Diagram 对象的数据库将包含一个dbo.sysdiagrams表。

数据库图表系统使用的许多属性都存储在扩展属性中。这些可以sys.extended_properties在启用图表的数据库中看到。

以下对象也参与了数据库图表系统:

dbo.sp_upgraddiagrams
dbo.sysdiagrams
dbo.sp_helpdiagrams
dbo.sp_helpdiagramdefinition
dbo.sp_creatediagram
dbo.sp_renamediagram
dbo.sp_alterdiagram
dbo.sp_dropdiagram

希望上述详细信息能让您走上对数据库图表系统进行逆向工程的道路,但请注意,实际图表以二进制格式存储,据我所知,没有记录