推断限制

根据每个文档中的 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”的数据集和一个名为“DocumentElement”的表。"Element1" 被推断为列,因为它没有属性和子元素。

数据集:NewDataSet

表:DocumentElement

Element1
Text1

这两个 XML 文档可能本应生成相同的架构,但根据每个文档中包含的不同元素,推断过程生成了极不相同的结果。

为了避免在从 XML 文档生成架构时可能出现的差异,建议在从 XML 中加载 DataSet 时使用 XML 架构定义语言 (XSD) 或 XML 数据缩减 (XDR) 显式地指定架构。 有关使用 XML 架构显式指定 数据集 架构的信息,请参阅从 XML 架构派生数据集关系结构 (XSD)

请参阅