SSIS 中的审核转换允许您添加具有审核信息的额外列(计算机名、包名、ID、日期等)以满足审核要求。我们可以使用此 SSIS 审核转换将该信息保存在目标表中。例如,如果我们想调查
- 哪个用户执行了此包?
- 包的执行时间?
- 他是/她从哪台机器上执行的?
- 任务 ID、包 ID、包名称等是什么?
SSIS 审核转换中可用选项列表
- ExecutionInstanceGUID – 标识包执行实例的 GUID。
- PackageID – 这是包的唯一标识符。
- PackageName – 这显示了包的名称。
- VersionID – 包的唯一版本号。
- ExecutionStartTime – 包开始运行的时间。
- MachineName – 计算机的名称。
- UserName – 启动包的人的登录名。
- TaskName – 与 Audit 转换关联的数据流任务的名称。
- TaskId – 数据流任务的唯一标识符。
SSIS 审核转换示例
对于此 SSIS 示例,我们在 SQL Server 中使用 Adventure Works DW。
步骤 1:将数据流任务从工具箱拖放到控制流。接下来,将其重命名为 Audit Transformation。

双击它以打开数据流选项卡。有关更多转换,请单击 >> 此处。
步骤 2:将 OLE DB Source、Audit transformation 和 ADO.NET destination 拖放到 SSIS 数据流区域。

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

目前,我们从 Adventure Works 数据库中选择了名字、姓氏和年收入。在这里,我们希望将相同的信息以及额外的审核信息发送到目标表中。
我们用于 SSIS 审核转换的命令文本是
SELECT FirstName, LastName,YearlyIncome
FROM DimCustomer
步骤 4:单击列选项卡以验证列。在此选项卡中,我们还可以取消选中不需要的列。

提示:如果我们不想要 SSIS 审核转换的任何列,那么添加它到您的命令中就没有意义了。
配置 SSIS 中的审核转换
步骤 5:单击“确定”,然后将 OLE DB Source 的绿色箭头连接到 Audit Transformation。双击 AUDIT Transformation 进行编辑。

选择所需的审核类型,然后单击“确定”。在这里,我们选择了所有审核类型。
注意:您可以通过编辑“Output Column Name”字段来更改列名。
步骤 6:接下来,我们需要提供目标的服务器、数据库和表详细信息。因此,双击 ADO.NET Destination 并提供所需信息。

从上面的截图可以看出,我们将审核转换数据存储在 SSIS Tutorial 数据库中的 [AUDIT Destination] 表中。
步骤 7:单击“Mappings”选项卡以检查源列是否已正确映射到目标列。

注意:如果您的输入列名和目标列名相同,智能映射会自动完成。如果列名有任何更改(任何别名或计算列),我们必须手动映射它们。
单击“确定”以完成 SSIS 包中的 Audit Transformation 配置。让我们运行包并查看结果。

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

注意:SSIS 中的 Audit Transformation 不支持错误输出。
评论已关闭。