如果元素包含文本,并且没有要推断为表的子元素(如具有属性或重复元素的元素),则名称 为TableName_Text 的新列将添加到为元素推断的表中。 元素中包含的文本将添加到表中的行中,并存储在新列中。 新列的 ColumnMapping 属性将设置为 MappingType.SimpleContent。
例如,请考虑以下 XML。
<DocumentElement>
<Element1 attr1="value1">Text1</Element1>
</DocumentElement>
推理过程将生成一个名为 Element1 的表,其中包含两列: attr1 和 Element1_Text。 attr1 列的 ColumnMapping 属性将设置为 MappingType.Attribute。 Element1_Text列的 ColumnMapping 属性将设置为 MappingType.SimpleContent。
数据集: DocumentElement
表格: 元素1
attr1 | 元素1_文本 |
---|---|
value1 | 文本一 |
如果元素包含文本,但还包含包含文本的子元素,则不会将列添加到表中以存储元素中包含的文本。 将忽略元素中包含的文本,而子元素中的文本包含在表中的一行中。 例如,请考虑以下 XML。
<Element1>
Text1
<ChildElement1>Text2</ChildElement1>
Text3
</Element1>
推理过程将生成名为 Element1 的表,其中包含一个名为 ChildElement1 的列。 ChildElement1 元素的文本将包含在表中的一行中。 将忽略其他文本。 ChildElement1 列的 ColumnMapping 属性将设置为 MappingType.Element。
数据集: DocumentElement
表格: 元素1
ChildElement1 |
---|
Text2 |