2008-09-19 69 views
2

我們正在嘗試爲我們的測試記錄使用SQL Server 2003數據庫,並希望快速獲取NUnit和NAnt輸出並生成SQL模式和數據。是否有一種使用描述這些XML文檔的XSD文件生成SQL Schema的簡單方法?自動從XML生成SQL模式

回答

1

您可以使用XSD。不,我認真的。轉到命令提示符並鍵入xsd並按Enter鍵。

這裏你會看到什麼(部分):

I:\>xsd 
Microsoft (R) Xml Schemas/DataTypes support utility 
[Microsoft (R) .NET Framework, Version 1.0.3705.0] 
Copyright (C) Microsoft Corporation 1998-2001. All rights reserved. 


xsd.exe - 
    Utility to generate schema or class files from given source. 

xsd.exe <schema>.xsd /classes|dataset [/e:] [/l:] [/n:] [/o:] [/uri:] 
xsd.exe <assembly>.dll|.exe [/outputdir:] [/type: [...]] 
xsd.exe <instance>.xml [/outputdir:] 
xsd.exe <schema>.xdr [/outputdir:] 

只要按照指示。

1

由於XSD在主從關係方面不明確,我懷疑自動生成是可能的。

例如,如

<xs:element name="foo" type="footype" minOccurs="0" maxOccurs="unbounded" /> 

可以被解釋爲子表 「foo」 的(1:N)的聲明或作爲N:M關係。

minOccurs =「0」maxOccurs =「1」可能是一個可爲空的列或可選的1:1關係。

type =「xs:string」maxOccurs =「1」是一個字符串((n)varchar)列或可選的查找;但type =「xs:string」maxOccurs =「unbounded」是一個具有(n)varchar列的詳細表。

0

有一個名爲ShreX的工具,可以從xsd創建模式並從XML插入。它試圖自己做到這一點(你可以註明xsd來引導它)。如果你想自己決定結構,它可能不是你想要的。