Informatica 中的更新策略转换是一种活动连接转换。它可用于根据源表数据更新、插入或删除目标中的记录。此 Informatica 更新策略转换的优点在于,您可以限制记录不到达目标表。
本文介绍了如何配置 Informatica 更新策略转换。或配置更新策略以更新目标表中记录的步骤。
对于此 Informatica 更新策略转换示例,我们将使用以下显示的数据(客户记录表)。

目标表是

Informatica 更新策略转换示例
如果将源表与目标表进行比较,会发现电子邮件地址和职业列存在多个更改。在此示例中,我们的任务是使用 Informatica 更新策略转换来更新目标表中的更改。
在开始配置更新策略转换之前,请连接到存储库服务。为此,请输入您在安装服务器时指定的管理员控制台用户名和密码。
创建 Informatica 更新策略转换源定义
成功连接后,请导航到源分析器并定义您的源。在此示例中,我们将 SQL Server 数据库中的 [客户记录] 表用作源定义。请参考数据库源文章。

创建 Informatica 更新策略转换目标定义
请导航到目标设计器并定义 Informatica 更新策略转换目标。在此示例中,我们将已创建的表(DupCust)用作目标定义。请参考使用源定义创建目标表了解创建目标定义所涉及的步骤。

创建映射
要为 Informatica 更新策略转换创建新映射,请导航到菜单栏中的“映射”菜单,然后选择“创建...”选项。

这将打开“映射”名称窗口,用于为此映射输入唯一名称。例如,请输入 m_update_trans,然后单击“确定”按钮。

将客户记录源定义从“源”文件夹拖放到映射设计器。拖放源后,Power Center 设计器会自动为您创建源限定符。

在 Informatica 中创建更新策略转换
要在 Informatica 中创建更新策略转换,请导航到“转换”菜单,然后选择“创建...”选项。

单击“创建...”选项后,将打开“创建转换”窗口。请从下拉列表中选择“更新策略转换”。接下来,指定唯一名称(ups_Customers),然后单击“创建”按钮。

单击创建按钮后,更新策略转换将添加到映射设计器。

接下来,将目标定义(DupCust)从“目标”文件夹拖放到映射设计器。

在此示例中,我们希望更新电子邮件地址和职业列中发生的更改。因此,将这两个字段以及键列拖到 Informatica 更新策略转换中。

双击 Informatica 更新策略转换进行配置。从下面的屏幕截图可以看到“更新策略转换”选项卡中可用的属性列表。
- 选择转换:默认情况下,它将选择您单击的转换。
- 重命名:此按钮将帮助您将更新策略转换重命名为更有意义的名称。
- 设为可重用:如果勾选此选项,此转换将成为可重用转换。
- 描述:请提供有效的描述。

下面的屏幕截图显示了 Informatica 更新策略转换“端口”选项卡中可用的选项列表。
- 端口名称:此 Informatica 更新策略中的可用列名称列表。您可以通过单击“新列”按钮添加新列,通过单击剪刀按钮删除不需要的列。
- I:在此部分下标记的列是输入列。
- O:在此部分下标记的列是输出列。如果取消勾选任何列,该列将无法加载到目标表中。

在 Informatica 更新策略转换属性选项卡下,我们有
- 更新策略表达式:此处,您需要指定是要执行插入、删除还是更新
- DD_INSERT:数字值为 0。用于插入记录。
- DD_UPDATE:此用于更新行,数字值为 1。
- DD_DELETE:数字值为 2。用于删除行。
- DD_REJECT:数字值为 3。用于拒绝行。
- 转发被拒绝的行:如果要将被拒绝的行转发到下一个转换,则需要勾选此选项。
- 跟踪级别:保持默认值“正常”。

这将打开表达式编辑器以编写自定义表达式。此处,我们使用 DD_UPDATE 表达式。

单击“应用”然后单击“确定”关闭窗口。

接下来,使用“自动链接...”选项将 Informatica 更新策略转换与目标定义连接起来。

在关闭映射之前,让我们通过转到“映射”并选择“验证”选项来验证 Informatica 更新策略转换映射。
创建工作流
完成映射创建后,我们必须为其创建工作流。它提供了创建工作流的两种方法。
在此 Informatica 更新策略转换示例中,我们将手动创建工作流。因此,导航到“工作流”菜单并选择“创建”选项。

这将打开“创建工作流”窗口。请提供唯一名称(wf_update_tran)并保留默认设置。

创建 Informatica 更新策略工作流后,下一步是为我们的映射创建会话任务。
创建会话
有两种类型的会话
对于此 Informatica 更新策略转换示例,我们将创建一个非可重用会话。为此,转到“任务”菜单并选择“创建”选项。

请为此会话提供唯一名称(s_update_tran)。单击“创建”按钮后,将打开一个新的“映射”窗口。此处,我们选择 m_update_trans。

请将“开始任务”链接到新创建的会话任务。

双击会话任务将打开“编辑任务”窗口。在“属性”选项卡中
将源行视为:在此情况下,默认选择“数据驱动”。如果不是,请将其更改为“数据驱动”。请记住,“数据驱动”选项意味着,它将使用更新策略转换选项来加载目标表,而不是执行默认插入。

$源连接值
此属性将在 $Source 变量中存储关系源信息。因此,单击下方标记的箭头,然后选择 SQL Tutorial 作为源信息。

$目标连接值
此属性将在 $Target 变量中存储关系目标信息。因此,单击下方标记的箭头,然后选择 SQL Test 目标作为目标信息。

我们必须在“映射”选项卡中配置源和目标连接。首先,通过单击“源”文件夹中的 SQ_CustomerRecord 源来配置源连接。
在“连接”中,单击“关系类型”旁边的箭头按钮。然后使用我们在上一步中创建的连接变量,即 $Source。

现在,我们必须配置目标连接。因此,单击“目标”文件夹中的 DupCust。在“连接”中,单击“关系类型”旁边的箭头按钮。然后使用连接变量 $Target。

接下来,我将启动 Informatica 更新策略转换工作流。为此,请导航到“工作流”菜单并选择“启动工作流”选项。
让我们打开 SQL Server Management Studio,以检查我们是否成功执行了 Informatica 更新策略。

评论已关闭。