我想为一个使用XML文件的sql-server数据库构建一个导入接口。现在我不得不创建一个XSD文件来确保输入-xml正确。
我们说我有这样一张桌子:
table: accounts
colummns: account_id INT NOT NULL
name VARCHAR(20) NOT NULL
type CHAR(1) NOT NULL
desc VARCHAR(100)
并且xml文件应如下所示:
<accounts>
<account>
<account_id>1</account_id>
<name>account A</name>
<type>B</type>
</account>
<account>
<account_id>2</account_id>
<name>account B</name>
<type>D</type>
<desc>some text here</desc>
</account>
</accounts>
这是我第一次设计这样的东西而且我没有使用xsd文件的经验......
我尝试了一些像SELECT .. FOR XML AUTO, XMLSCHEMA
和XSD.exe这样的东西,但没有给我任何想要的东西。
我想在XSD中映射SQL-Server表的类型 - 例如nullable / not nullable和字符串长度。应声明一系列有效值(例如type
只能是A,B,C或D)。
答案 0 :(得分:1)
SELECT * FROM [accounts] FOR XML PATH('account'), ROOT('accounts')
答案 1 :(得分:0)
找到了一个使用XSD.exe的解决方案 - 刚刚创建了一个XSD然后采用了它,但是如果你对这个主题完全不熟悉那就很难了; - )