将“ DBML”文件转换为“ SQL数据库文件”

问题描述 投票:4回答:3

我具有数据库的DBML文件,并希望从该文件生成SQL数据库文件。

谢谢

sql linq linq-to-sql
3个回答
2
投票

[在数据上下文上有一个名为CreateDatabase()的方法,您可以使用。

http://msdn.microsoft.com/en-us/library/system.data.linq.datacontext.createdatabase.aspx


1
投票

我不知道有没有可用的实用程序可以做到这一点,因此对于SO答案还有很多工作要做。

但是,在大多数情况下,这没什么大不了的。 DBML文件是用XML编写的;它应该很容易通过Linq-to-xml读取。然后,只需将xml中值的SQL命令拆分为脚本文件即可。然后运行脚本。 (也可以通过XSLT转换来完成)

<Table Name="dbo.Person" Member="Persons"> 

成为

 CREATE TABLE Persons (

  <Column Name="PersonID" Type="System.Int32" DbType="Int NOT NULL IDENTITY"
          IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false">
  </Column>

  <Column Name="AddressID" Type="System.Int32" DbType="Int NOT NULL" 
          CanBeNull="false"></Column>  

成为:

 PersonID Int NOT NULL,
 AddressID int NOT NULL,

依此类推。


0
投票

您可以使用CLI工具。

dbml2sql schema.dbml -o schema.sql

https://www.dbml.org/cli/#convert-a-dbml-file-to-sql

© www.soinside.com 2019 - 2024. All rights reserved.