2008-09-19 71 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来引导它)。如果你想自己决定结构,它可能不是你想要的。