自动从XML生成SQL模式
问题描述:
我们正在尝试为我们的测试记录使用SQL Server 2003数据库,并希望快速获取NUnit和NAnt输出并生成SQL模式和数据。是否有一种使用描述这些XML文档的XSD文件生成SQL Schema的简单方法?自动从XML生成SQL模式
答
您可以使用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:]
只要按照指示。
答
由于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列的详细表。