更新:November 2007
根据每个文档中的 XML 元素,从 XML 推断 DataSet 架构的过程会产生不同的架构。 例如,考虑以下 XML 文档。
Document1:
<DocumentElement>
<Element1>Text1</Element1>
<Element1>Text2</Element1>
</DocumentElement>
Document2:
<DocumentElement>
<Element1>Text1</Element1>
</DocumentElement>
对于“Document1”,由于“Element1”是重复元素,推断过程将生成一个名为“DocumentElement”的 DataSet 和一个名为“Element1”的表。
数据集: DocumentElement
表: Element1
Element1_Text |
---|
Text1 |
Text2 |
但是,对于“Document2”,推断过程将生成一个名为“NewDataSet”的 DataSet 和一个名为“DocumentElement”的表。 由于“Element1”不具有属性和子元素,它将被推断为列。
数据集: NewDataSet
表: DocumentElement
Element1 |
---|
Text1 |
这两个 XML 文档可能本应生成相同的架构,但根据每个文档中包含的不同元素,推断过程生成了极不相同的结果。
为了避免在从 XML 文档生成架构时可能出现的差异,建议在从 XML 中加载 DataSet 时使用 XML 架构定义语言 (XSD) 或 XML 数据缩减 (XDR) 显式地指定架构。 有关使用 XML 架构显式指定 DataSet 架构的更多信息,请参见从 XML 架构 (XSD) 派生数据集关系结构。