SSIS 中的审核转换

SSIS 中的审核转换允许您添加具有审核信息的额外列(计算机名、包名、ID、日期等)以满足审核要求。我们可以使用此 SSIS 审核转换将该信息保存在目标表中。例如,如果我们想调查

  • 哪个用户执行了此包?
  • 包的执行时间?
  • 他是/她从哪台机器上执行的?
  • 任务 ID、包 ID、包名称等是什么?

SSIS 审核转换中可用选项列表

  1. ExecutionInstanceGUID – 标识包执行实例的 GUID。
  2. PackageID – 这是包的唯一标识符。
  3. PackageName – 这显示了包的名称。
  4. VersionID – 包的唯一版本号。
  5. ExecutionStartTime – 包开始运行的时间。
  6. MachineName – 计算机的名称。
  7. UserName – 启动包的人的登录名。
  8. TaskName – 与 Audit 转换关联的数据流任务的名称。
  9. TaskId – 数据流任务的唯一标识符。

SSIS 审核转换示例

对于此 SSIS 示例,我们在 SQL Server 中使用 Adventure Works DW。

步骤 1:将数据流任务从工具箱拖放到控制流。接下来,将其重命名为 Audit Transformation。

Audit Transformation in SSIS 1

双击它以打开数据流选项卡。有关更多转换,请单击 >> 此处

步骤 2:将 OLE DB Source、Audit transformation 和 ADO.NET destination 拖放到 SSIS 数据流区域。

Audit Transformation in SSIS 2

步骤 3:双击数据流区域中的 OLE DB Source,打开 连接管理器 设置,并提供编写语句的空间。

Audit Transformation in SSIS 3

目前,我们从 Adventure Works 数据库中选择了名字、姓氏和年收入。在这里,我们希望将相同的信息以及额外的审核信息发送到目标表中。

我们用于 SSIS 审核转换的命令文本是

SELECT FirstName, LastName,YearlyIncome
FROM DimCustomer

步骤 4:单击列选项卡以验证列。在此选项卡中,我们还可以取消选中不需要的列。

Audit Transformation in SSIS 4

提示:如果我们不想要 SSIS 审核转换的任何列,那么添加它到您的命令中就没有意义了。

配置 SSIS 中的审核转换

步骤 5:单击“确定”,然后将 OLE DB Source 的绿色箭头连接到 Audit Transformation。双击 AUDIT Transformation 进行编辑。

Audit Transformation in SSIS 5

选择所需的审核类型,然后单击“确定”。在这里,我们选择了所有审核类型。

注意:您可以通过编辑“Output Column Name”字段来更改列名。

步骤 6:接下来,我们需要提供目标的服务器、数据库和表详细信息。因此,双击 ADO.NET Destination 并提供所需信息。

Audit Transformation in SSIS 6

从上面的截图可以看出,我们将审核转换数据存储在 SSIS Tutorial 数据库中的 [AUDIT Destination] 表中。

步骤 7:单击“Mappings”选项卡以检查源列是否已正确映射到目标列。

Audit Transformation in SSIS 7

注意:如果您的输入列名和目标列名相同,智能映射会自动完成。如果列名有任何更改(任何别名或计算列),我们必须手动映射它们。

单击“确定”以完成 SSIS 包中的 Audit Transformation 配置。让我们运行包并查看结果。

Audit Transformation in SSIS 8

让我们打开 Management Studio 查询窗口来预览数据。

Audit Transformation in SSIS 9

注意:SSIS 中的 Audit Transformation 不支持错误输出。

评论已关闭。