catalog.add_data_tap_by_guid

适用范围:SQL Server Azure 数据工厂中的 SSIS Integration Runtime

适用范围:SQL Server

对于执行实例,在包数据流中将数据分流点添加到指定的数据流路径。

语法

catalog.add_data_tap_by_guid [ @execution_id = ] execution_id  
, [ @dataflow_task_guid = ] dataflow_task_guid   
, [ @dataflow_path_id_string = ] dataflow_path_id_string  
, [ @data_filename = ] data_filename  
, [ @max_rows = ] max_rows  
, [ @data_tap_id = ] data_tap_id  

参数

[ @execution_id = ] execution_id
包含包的执行 ID。 execution_id 为 bigint。

[ @dataflow_task_guid = ] dataflow_task_guid
包含要分流的数据流路径的包中的数据任务流 ID。 dataflow_task_guiduniqueidentifier

[ @dataflow_path_id_string = ] dataflow_path_id_string
数据流路径的标识字符串。 一个路径连接两个数据流组件。 路径的 IdentificationString 属性指定该字符串。

若要找到此标识字符串,请在 SQL Server Data Tools 中右键单击两个数据流组件之间的路径,然后单击“属性”。 将在“属性”窗口中显示 IdentificationString 属性 。

dataflow_path_id_string 为 nvarchar(4000)。

[ @data_filename = ] data_filename
存储分流的数据的文件名称。 如果数据流任务在 Foreach 循环或 For 循环容器内执行,则用单独的文件存储该循环每次迭代的分流数据。 用与每次迭代对应的编号为每个文件加前缀。 数据分流点文件写入文件夹“<SQL Server 安装文件夹>>\130\DTS”。 data_filename 为 nvarchar(4000)。

[ @max_rows = ] max_rows
在数据分流期间捕获的行数。 如果未指定此值,则捕获所有行。 max_rows 为 int

[ @data_tap_id = ] data_tap_id
数据分流点的 ID。 data_tap_id 为 bigint。

示例

在以下示例中,对数据流任务 {D978A2E4-E05D-4374-9B05-50178A8817E8} 中的数据流路径 Paths[SRC DimDCVentor.OLE DB Source Output] 创建一个数据分流点。 分流的数据存储在 DCVendorOutput.csv 文件中。

exec catalog.add_data_tap_by_guid   @execution_id,   
'{D978A2E4-E05D-4374-9B05-50178A8817E8}',   
'Paths[SRC DimDCVentor.OLE DB Source Output]',   
'D:\demos\datafiles\DCVendorOutput.csv'  

注解

若要添加数据点击,执行实例必须处于创建状态(catalog.operations(SSISDB 数据库)视图状态列中的值为 1。 只要运行执行,状态值就会发生更改。 可以通过调用 catalog.create_execution(SSISDB 数据库)创建执行。

以下是 add_data_tap_by_guid 存储过程的注意事项。

  • 添加数据分流点时,在运行包之前不进行验证。

  • 建议限制在数据分流期间捕获的行数,以避免生成大型数据文件。 如果执行存储过程的计算机无法为数据文件提供足够的存储空间,存储过程将停止运行。

  • 运行 add_data_tap_by_guid 存储过程会影响包的性能。 建议您仅运行该存储过程来解决数据问题。

  • 要访问存储分流数据的文件,您必须对运行该存储过程的计算机具有管理员权限,或者必须是开始执行包含带数据分流点的包的用户。

返回代码

0(成功)

存储过程失败时引发错误。

结果集

权限

此存储过程需要下列权限之一:

  • 针对执行实例的 MODIFY 权限

  • ssis_admin 数据库角色的成员资格

  • sysadmin 服务器角色的成员资格

错误和警告

下表说明了导致存储过程失败的情况。

  • 用户没有 MODIFY 权限。

  • 已添加指定的包中指定组件的数据分流点。

  • 为要捕获的行数指定的值无效。

要求

另请参阅

catalog.add_data_tap