Compartilhar via


catalog.add_data_tap_by_guid

Adiciona um toque de dados a um caminho de fluxo de dados específico em um fluxo de dados de pacote, para uma instância da execução.

Sintaxe

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

Argumentos

  • [ @execution\_id = ] execution_id
    A ID da execução que contém o pacote. O execution_id é um bigint.

  • [ @dataflow\_task\_guid = ] dataflow_task_guid
    O ID do fluxo de dados da tarefa no pacote que contém o caminho de fluxo de dados a ser tocado. O dataflow_task_guid é um uniqueidentifier.

  • [ @dataflow\_path\_id\_string = ] dataflow_path_id_string
    A cadeia de caracteres de identificação do caminho de fluxo de dados. Um caminho conecta dois componentes de fluxos de dados. A propriedade IdentificationString do caminho especifica a cadeia de caracteres.

    Para localizar a cadeia de caracteres de identificação, no SQL Server Data Tools, clique com o botão direito do mouse no caminho entre dois componentes de fluxo de dados e, depois, clique em Propriedades. A propriedade IdentificationString aparece na janela Propriedades.

    O dataflow_path_id_string é um nvarchar(4000).

  • [ @data\_filename = ] data_filename
    O nome do arquivo de dados que armazena os dados tocados. Se a tarefa de fluxo de dados for executada dentro de um contêiner de Loop Foreach ou Loop For, arquivos separados armazenarão os dados tocados para cada iteração do loop. Cada arquivo é prefixado com um número que corresponde a uma iteração. Arquivos de toque de dados são gravados na pasta "<SQL Server installation folder>\110\DTS\". O data_filename é um nvarchar(4000).

  • [ @max\_rows = ] max_rows
    O número de linhas capturadas durante o toque de dados. Se esse valor não for especificado, todas as linhas serão capturadas. O max_rows é um int.

  • [ @data\_tap\_id = ] data_tap_id
    A ID do toque de dados. O data_tap_id é um bigint.

Exemplo

No exemplo a seguir, um toque de dados é criado no caminho do fluxo de dados, Paths[SRC DimDCVentor.OLE DB Source Output], na tarefa de fluxo de dados {D978A2E4-E05D-4374-9B05-50178A8817E8}. Os dados tocados são armazenados no arquivo 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' 

Comentários

Para adicionar toques de dados, a instância da execução deve estar no estado criado (um valor de 1 na coluna status da exibição catalog.operations (Banco de Dados SSISDB)). O valor de estado muda quando você realiza a execução. Você pode criar uma execução chamando catalog.create_execution (Banco de dados SSISDB).

As seguintes são considerações a respeito do procedimento armazenado add_data_tap_by_guid.

  • Quando você adiciona um toque de dados, ele não é validado antes de o pacote ser executado.

  • É recomendável limitar o número de linhas capturadas durante o toque de dados, para evitar gerar arquivos de dados grandes. Se a máquina na qual o procedimento armazenado é executado ficar sem espaço de armazenamento para os arquivos de dados, a execução do procedimento armazenado será interrompida.

  • A execução do procedimento armazenado add_data_tap_by_guid afeta o desempenho do pacote. É recomendável executar o procedimento armazenado apenas para solucionar problemas de dados.

  • Para acessar o arquivo que armazena os dados tocados, você deve ter permissões de administrador na máquina na qual o procedimento armazenado é executado ou deve ser o usuário que iniciou a execução que contém o pacote com toque de dados.

Códigos de retorno

0 (êxito)

Quando há falha no procedimento armazenado, ele gera um erro.

Conjunto de resultados

Nenhum

Permissões

Este procedimento armazenado exige uma das seguintes permissões:

  • Permissões MODIFY na instância de execução

  • Associação à função de banco de dados ssis_admin

  • Associação à função de servidor sysadmin

Erros e avisos

A lista a seguir descreve as condições que podem provocar falha no procedimento armazenado.

  • O usuário não tem permissões MODIFY.

  • O toque de dados para o componente especificado, no pacote especificado, já foi adicionado.

  • O valor especificado para o número de linhas a serem capturadas não é válido.

Consulte também

Referência

catalog.add_data_tap