但是我只对xml数据文件的某些元素感兴趣,而不是每个元素。我的问题是:在模式文件中,我需要提及xml数据文件中存在的每个元素,或者只提到我有兴趣加载的元素
第二个问题是:是否有任何工具可以自动生成sqlxml批量加载的这些模式文件,因为我对xsd / xdr知之甚少
提前致谢
答案 0 :(得分:1)
我遇到了这个老问题,寻找其他的东西,但无论如何我都会回答,以备将来参考。
要忽略某些元素,您可以使用:
sql:mapped="false"
完全忽略某个节点,包括其子节点(请参阅sql:mapped (SQLXML 4.0))sql:is-constant="true"
忽略容器节点,但继续处理子容器(请参阅Creating Constant Elements Using sql:is-constant (SQLXML 4.0))sql:overflow-field="OverflowColumnName"
写下您未映射到额外列的所有内容(请参阅sql:overflow-field (SQLXML 4.0)) Tot自动生成模式文件,您可以使用xsd.exe
生成模式,但是您必须自己添加关系,请参阅the XML Bulk Load Examples on MSDN。我对其他工具一无所知,但我似乎记得对生成关系的工具的一些参考。
编辑我刚刚遇到这篇旧帖子How can I create database tables from XSD files?。当然,从.xsd
生成模式比.xml
更进一步,但它会节省一些时间,也许这些相同的工具也可以从XML生成它? (除了这些工具在2008年被提及,但是嘿,尝试它从来没有伤害过。)它提到了这些工具:
答案 1 :(得分:0)
您可以使用XSD.exe从XML数据文件创建架构。