在数据适配器中创建映射使您可以在数据源中的列和数据集表中的列之间建立对应。

将数据源列映射到数据集表

  1. 创建一个数据适配器。
  2. 在窗体或组件设计器中,选择数据适配器,并打开“属性”窗口。
  3. TableMappings 属性旁边,单击“省略号”按钮。

    “映射”对话框即打开。

  4. 如果想要使数据源中的列名映射到某个现有数据集,请选中“使用数据集以建议表名和列名”,然后从“数据集”列表选择一个数据集。

    在“数据集表”列表中列出该数据集内可用的表,且数据集内第一个表中的列填写到“列映射”网格的右侧。

    注意 选择数据集是一个方便的方法,允许“映射”对话框为要映射到的数据集列建立默认值。数据集不是为适配器中的映射所维护的信息的组成部分。而且,可以对多个数据集使用相同的映射。
  5. 在“源表”下,选择要映射的数据源中的表。如果数据集内只有一个表,则默认值为 Table
  6. 在“数据集表”下,选择要映射的数据集内的表。如果在步骤 3 中选择了要映射到的数据集,则此时应已填写了一个名称。(默认情况下,将数据集内的第一个表当作 Table。)

    根据您的选择(或默认值),填写“源列”和“数据集列”列表中的值。网格指示将怎样执行映射:左列中的每一列将与右列中的对应列相匹配。

  7. 根据需要调整映射。这可以包括:
  8. 在完成调整映射后,单击“确定”。
  9. 如果想要指定处理可能的错误情况的方式,请在“属性”窗口中选择 MissingMappingActionMissingSchemaAction 属性的选项。下表列出一些常见设置及其效果。
MissingMappingAction MissingSchemaAction 效果
Passthrough AddAddWithKey 如果源中存在某列,但架构中没有该列,并且没有其映射,则将在填充数据集时创建该列。这是默认设置,在只想将源中所有可用的列复制到数据集时很有用。
Ignore Ignore 如果未在数据集架构中定义该列,或没有该列的映射,则不将信息从源复制到数据集。当适配器返回多于数据集内所需的信息时,该设置很有用。
Error Error 当由于缺少映射或数据集架构不包含某列,使得适配器无法将某源列映射到数据集列时,将引发运行时错误。当正在使用严格定义的架构并希望确保标记出偏离架构的任何内容时,该设置很有用。