我想要一个数据结构描述的单一来源。

有人问数据库中的DBML文件发生变化时是否可以刷新。我的做法虽然愚蠢但很常见;打开它,删除所有内容,然后再次拖放。我听说有一些第三者在做这些把戏。

但我在想,有什么办法可以反转操作吗?

在hibernate中,有一种方法可以从XML数据结构构建目标DB的DDL。

DBML文件有可能包含重建数据库DDL的所有信息吗?(例如。拥有这些 VIEW SQL、存储过程代码的副本),并即时构建“创建脚本”(就像您在 SQL Server 企业管理器中所做的那样)

有帮助吗?

解决方案

DBML 文件仅包含表、列、外键约束和主键。视图的存储方式与表相同,因此存储的唯一信息是视图的名称以及它返回的列(w/类型、可为空性等)。视图定义本身不被存储,因此无法从 dbml 文件中提取。

如果您使用 L2S 设计器和底层 DBML 文件进行数据建模,您将失去:

  • 非 PK 索引/键
  • 查看定义
  • 存储过程定义
  • 函数定义
  • 别名类型
  • ...ETC...

也就是说,如果您想从 DBML 生成表定义、FK、PK 等的 SQL-DDL,我的 Visual Studio 插件可以为您做到这一点。(它支持同步 db -> dbml 和 dbml -> sql-ddl -> db 您可以从以下位置下载它并获取试用许可证:
http://www.huagati.com/dbmltools/

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top