单表出站数据库活动

此部分包含配置下列单表出站数据库活动的过程。

这些活动包括: 对于更新行删除行活动,Integration Appliance 会集成数据库表以确定表中的哪些列是主键列。在运行时期间启动了更新行删除行活动时,Integration Appliance 使用包含主键编号的传入变量值来确定要更新或删除的行。
例如,PK 列在数据库中定义为数据库表的主键列。 针对删除行活动的核对表中的选取表任务中的 PK 列选中了使用复选框。在删除行活动的“映射输入”窗格中,名为 myIncomingPK 的变量映射到行的 PK 元素,如图 1 中所示:
图 1. myIncomingPK 映射到行的 PK 元素
在运行时期间,如果 myIncomingPK 变量的值等于 3,那么会从表中删除 PK 等于 3 的行,如图 2 中所示:
图 2. 将会删除主键等于 3 的行
如果在核对表选取表任务中未指定主键列,请至少指定一列来充当主键。使用“配置主键”对话框指定一个或多个代理主键列,方法是单击删除行更新行活动核对表选取表任务中的。如果在数据库表中未指定主键或在“配置主键”对话框中未选择主键作为代理主键,那么数据库表的所有行都受删除或更新操作的影响。

您还可以使用“配置主键”对话框来指定其他要充当主键列的列。例如,对于上图中的表,除已在数据库中定义为主键列的 PK 主列外,还可以定义 Name 列也充当主键列。

向编排中添加单表出站数据库活动

  1. 创建或打开编排。这样会以图形形式显示编排。
  2. 选择活动选项卡并展开数据库文件夹。
  3. 将所需的单表出站数据库活动(插入行删除行更新行)拖至编排上。
  4. 选择该活动。

创建、选择或编辑数据库端点

  1. 单击核对表中的选取端点任务,然后选择下列操作之一:
    • 选择现有端点:
      1. 选择浏览。这样会显示 Project Explorer。
      2. 选择现有端点并单击确定。 跳至“配置活动”过程。
    • 选择现有端点并编辑该端点:
      1. 选择浏览。这样会显示 Project Explorer。
      2. 选择现有端点并单击确定
      3. 单击编辑。这样会显示“编辑端点”窗格。
    • 创建端点:选择新建。这样会显示“创建端点”窗格。
  2. 创建或编辑 HTTP 端点(请参阅创建或编辑 HTTP 端点)。

选择在运行时期间 Integration Appliance 轮询更改所在的源数据库表中的列

  1. 单击核对表中的选取表。 这样会显示“选取表”窗格。
  2. 单击浏览... 以选择要作为入站消息源的数据库表。这样会显示“浏览数据库表”对话框。
  3. 从列表中选择表并单击确定。 此时在“选取表”窗格中会显示所选表的列信息。
  4. 如果此表的字符编码不同于数据库的编码,请使用下列选项之一输入其他编码:
    • 编码列表中选择其中一种缺省编码类型。 
    • 通过在编码字段中单击,然后输入编码类型,直接输入编码类型。
    这将为生成的缓冲区表的所有列设置编码。
    注: 一些双字节字符未使用 SHIFT-JIS 编码进行转换。有关更多信息,请参阅使用 Shift-JIS 编码
  5. 缺省情况下,会选择源表中的所有列。清除使用复选框将从生成的缓冲区表中除去列。单击全部使用以重新选择所有列。
  6. 在列标题中单击以按列值对行进行排序。例如,要按行的列名称对行进行排序,请单击列的列名称标题。在列标题名称右侧会显示一个箭头。向上箭头指示列按字母顺序(从 az)排序。向下箭头指示列按反向字母顺序(从 za)排序。单击箭头可逆转字母顺序。
  7. 仅对获取已更新行活动 - 如果希望生成的缓冲区表同时包含已更新列的新值和原始值,请遵循下列步骤:
    1. 单击旧值。这样会显示“更新的旧值列”对话框。
    2. 针对要保存原始值的数据库列选中存储复选框。
    3. 您可以更改指定给列(用于存储原始值)的缺省名称。双击相应的用于存储旧值的列的名称单元格。
    4. 单击确定。此时在“映射输出”窗格的源活动中会显示以字符串 old_ 为前缀的所选列。您可以从“映射输出”窗格映射新值和原始值。 
    注: 有关更多信息,请参阅为更新中的旧值定义列
  8. 如有必要,请更改数据类型编码可空值的设置。单击字段以进行新选择。
    • 数据类型 - 缺省为源数据库表中列的数据类型。如果缓冲区表中列的所需数据类型不同于源表的数据类型,请选择其他数据类型,方法是在数据类型单元格中单击,然后从列表中选择其他数据类型。 您必须为标记为 UNSUPPORTED 的数据类型选择相应的数据类型。
      注: 对于 Oracle 数据库中的 XMLTYPE 数据类型和 SQL Server 数据库中的 MONEY 数据类型,Studio 不会自动关联正确的数据类型,因此必须手动选择相应的数据类型。
      注意: 必须选择与源数据类型兼容的数据类型,以避免运行时期间数据无效。例如,如果源数据类型为 INTEGER,请勿为缓冲区表选择 SMALLINT 数据类型,因为在运行时期间,存储在 INTEGER 列中的大数字将不会正确转换为 SMALLINT 数据类型。
    • 大小 - 表中定义的列大小。此大小是从数据库表中检索到的并且不可配置。
    • 编码 - 缺省为已在数据库级别或表级别设置的当前缺省编码。如果列的所需编码不同于当前缺省编码,请选择其他编码,方法是在编码单元格中单击,然后从列表中选择其他编码。 
    • 可空 - 缺省为源数据库表中列的可空设置。对于 nullable=false 的列必须选中使用复选框。 标记为 nullable=false 的列在运行时期间不能包含 null。
  9. 单击重置以将所有列属性重置为其缺省值。这还会对所有列重置使用复选框。
  10. 单击刷新以更新与源数据库最新状态有关的列的列表。对源的最新更改在此窗格中进行更新。
  11. 配置指定数据库活动的交付规则
    注: 如果在交付规则任务中选择仅一次选项,那么必须创建供 Integration Appliance 在运行时期间使用的控制表。从 Studio 将编排发布到 Integration Appliance 后,创建控制表。部署项目之前,使用 Web 管理控制台 (WMC) 创建控制表。
    注: 如果选择仅一次选项,那么必须启用持久性。 有关更多信息,请参阅启用持久性
  12. 配置重试选项。有关更多信息,请参阅入站数据库活动的重试选项

指定活动的目标数据库表

  1. 单击核对表中的选取表。 这样会显示“选取表”窗格。
  2. 单击浏览... 以选择目标数据库表。这样会显示“浏览数据库表”对话框。
  3. 从列表中选择表并单击确定。 此时在“选取表”窗格中会显示所选表的列信息。
  4. 如果此表的字符编码不同于数据库的编码,请使用下列选项之一输入其他编码:
    • 编码列表中选择其中一种缺省编码类型。 
    • 通过在编码字段中单击,然后输入编码类型,直接输入编码类型。
    这将为生成的缓冲区表的所有列设置编码。
    注: 一些双字节字符未使用 SHIFT-JIS 编码进行转换。有关更多信息,请参阅使用 Shift-JIS 编码
  5. 缺省情况下,会选择源表中的所有列。清除使用复选框将从生成的缓冲区表中除去列。如果未选择列,那么该列不会显示在“映射输入”窗格中并且在运行时不更新。单击全部使用以重新选择所有列。
  6. 在列标题中单击以按列值对行进行排序。例如,要按行的列名称对行进行排序,请单击列的列名称标题。在列标题名称右侧会显示一个箭头。向上箭头指示列按字母顺序(从 az)排序。向下箭头指示列按反向字母顺序(从 za)排序。单击箭头可逆转字母顺序。
  7. 如有必要,请更改数据类型编码可空值的设置。单击字段以进行新选择。
    • 数据类型 - 缺省为源数据库表中列的数据类型。如果缓冲区表中列的所需数据类型不同于源表的数据类型,请选择其他数据类型,方法是在数据类型单元格中单击,然后从列表中选择其他数据类型。 您必须为标记为 UNSUPPORTED 的那些数据类型选择相应的数据类型。
      注: 对于 Oracle 数据库中的 XMLTYPE 数据类型和 SQL Server 数据库中的 MONEY 数据类型,Studio 不会自动关联正确的数据类型,因此必须手动选择相应的数据类型。
      注意: 必须选择与源数据类型兼容的数据类型,以避免运行时期间数据无效。例如,如果源数据类型为 INTEGER,请勿为缓冲区表选择 SMALLINT 数据类型,因为在运行时期间,存储在 INTEGER 列中的大数字不会正确转换为 SMALLINT 数据类型。
    • 大小 - 表中定义的列大小。此大小是从数据库表中检索到的并且不可配置。
    • 编码 - 缺省为已在数据库级别或表级别设置的当前缺省编码。如果列的所需编码不同于当前缺省编码,请选择其他编码,方法是在编码单元格中单击,然后从列表中选择其他编码。 
    • 可空 - 缺省为源数据库表中列的可空设置。对于 nullable=false 的列必须选中使用复选框。 标记为 nullable=false 的列在运行时期间不能包含 null。
  8. 单击重置以将所有列属性重置为其缺省值。这还会对所有列重置使用复选框。
  9. 单击刷新以更新与源数据库最新状态有关的列的列表。对源的最新更改在此窗格中进行更新。
  10. 仅对更新行活动 - 选中如果行还不存在请插入行复选框,前提是在运行时期间,希望更新行活动首先尝试并更新指定行,但如果该行不存在,那么将该行插入到数据库表中。 
  11. 仅对更新行活动 - 如果要在数据库中同时保存新值和原始值,请遵循下列步骤:
    1. 单击旧值。这样会显示“更新的旧值列”对话框。
    2. 针对要保存原始值的数据库列选中存储复选框。
    3. 您可以更改指定给列的缺省值,这些列用于在运行时期间存储原始值。在相应的用于存储旧值的列的名称单元格中双击。
    4. 单击确定。此时在“映射输出”窗格的“目标活动”中会显示以字符串 old_ 为前缀的所选列。 您可以从“映射输出”窗格映射到新值和原始值。 
    注: 有关更多信息,请参阅为更新中的旧值定义列
  12. 仅对更新行删除行活动 - 要指定除数据库已定义的任何主键列外的代理主键列,请遵循下列步骤:
    1. 单击。这样会显示“配置主键”对话框。
    2. 要将某列指定为代理主键列,请单击该列,然后单击 >>
    3. 单击确定
    注: 如果在核对表选取表任务中未指定主键列(如数据库中所定义),那么必须至少指定一列作为代理主键列。
    重复此步骤以指定更多代理主键列。
  13. 配置指定数据库活动的交付规则
    注: 如果在交付规则任务中选择仅一次选项,那么必须创建供 Integration Appliance 在运行时期间使用的控制表。从 Studio 将编排发布到 Integration Appliance 后,创建控制表。部署项目之前,使用 Web 管理控制台 (WMC) 创建控制表。
    注: 如果选择仅一次选项,那么必须启用持久性。有关更多信息,请参阅启用持久性
  14. 配置重试选项。有关更多信息,请参阅出站数据库活动的重试选项

映射活动的输入

  1. 核对表中选择映射输入任务。
    此时在“目标活动”窗格中的 row 元素下会显示活动的输入参数。“源活动”窗格中显示的输入参数与在选取表任务中所选的列对应。如果在交付规则中选中了每条消息批处理多行复选框,那么在 row 元素旁边会显示多次出现符号。
    注: 仅对获取已更新行活动,如果在“更新的旧值列”对话框中选择了一些列(在选取表任务中),那么这些附加输出参数(缺省情况下以字符串 old_ 为前缀)也显示在 rows 元素下。 
  2. 映射所有输入参数。请参阅创建映射,以获取与映射有关的常规指示信息。必须映射活动的所有输入参数。

映射活动的输出

  1. 核对表中选择映射输出任务。
    GetRowsCount 复选框确定“映射输出”窗格中的显示内容:
    • 如果在交付规则中清除了获取行计数复选框,那么“映射输出”窗格为空白。
    • 如果在交付规则中选中了获取行计数复选框,那么“映射输出”窗格会显示 rowCount 元素。 如果在交付规则中选中了每条消息批处理多行复选框,那么在 rowCount 元素旁边会显示多次出现符号。
  2. 如果显示了 RowCount 输出参数,请根据需要映射 RowCount 输出参数。 请参阅创建映射,以获取与映射有关的常规指示信息。您无需映射活动的输出参数。  



反馈 | 声明


http://pic.dhe.ibm.com/infocenter/wci/v7r0m0/topic/com.ibm.wci.doc/db_singletable_outbound_database_activities.html