catalog.create_execution (Banco de dados SSISDB)
Aplica-se a: SQL Server SSIS Integration Runtime no Azure Data Factory
Aplica-se: SQL Server
Cria uma instância de execução no catálogo do Integration Services.
Este procedimento armazenado usa o nível padrão de registro em log do servidor.
Sintaxe
catalog.create_execution [ @folder_name = ] folder_name
, [ @project_name = ] project_name
, [ @package_name = ] package_name
[ , [ @reference_id = ] reference_id ]
[ , [ @use32bitruntime = ] use32bitruntime ]
[ , [ @runinscaleout = ] runinscaleout ]
[ , [ @useanyworker = ] useanyworker ]
, [ @execution_id = ] execution_id OUTPUT
Argumentos
[@folder_name =] folder_name
O nome da pasta que contém o pacote a ser executado. O folder_name é nvarchar(128) .
[@project_name =] project_name
O nome do projeto que contém o pacote a ser executado. O project_name é nvarchar(128) .
[@package_name =] package_name
O nome do pacote a ser executado. O package_name é nvarchar(260).
[@reference_id =] reference_id
Um identificador exclusivo para uma referência do ambiente. Esse parâmetro é opcional. O reference_id é bigint.
[@use32bitruntime =] use32bitruntime
Indica se o runtime de 32 bits deve ser usado para executar o pacote em um sistema operacional de 64 bits. Use o valor 1 para executar o pacote com o runtime de 32 bits ao executar em um sistema operacional de 64 bits. Use o valor 0 para executar o pacote com o runtime de 64 bits ao executar em um sistema operacional de 64 bits. Esse parâmetro é opcional. O Use32bitruntime é bit.
[@runinscaleout =] runinscaleout
Indique se a execução está no Scale Out. Use o valor 1 para executar o pacote no Scale Out. Use o valor 0 para executar o pacote sem o Scale Out. Esse parâmetro é opcional. Se o valor não for especificado, ele será definido como DEFAULT_EXECUTION_MODE em [SSISDB].[catalog].[catalog_properties]. O runinscaleout é bit.
[@useanyworker =] useanyworker
Indique se qualquer Trabalho do Scale Out tem permissão para fazer a execução.
Use o valor 1 para executar o pacote com qualquer Trabalho do Scale Out. Ao definir
@useanyworker
como verdadeiro, qualquer trabalho cuja contagem máxima de tarefas (conforme especificado no arquivo de configuração do trabalho) ainda não tenha sido atingida estará disponível para executar o pacote. Para obter informações sobre o arquivo de configuração do trabalho, consulte Trabalho do Integration Services (SSIS) Scale Out.Use o valor 0 para indicar que nem todos os Trabalhos do Scale Out têm permissão para executar o pacote. Ao definir
@useanyworker
como falso, você precisará especificar os trabalhos que têm permissão para executar o pacote usando o Gerenciador do Scale Out ou chamando o procedimento armazenado[catalog].[add_execution_worker]
. Se você especificar um trabalho que já está executando outro pacote, o trabalho terminará a execução do pacote atual antes de solicitar outra execução.
Esse parâmetro é opcional. Se o valor não for especificado, ele será definido como 1. O useanyworker é bit.
[@execution_id =] execution_id
Retorna o identificador exclusivo de uma instância de execução. O execution_id é bigint.
Comentários
Uma execução é usada para especificar os valores de parâmetro que um pacote usa durante uma única instância de execução do pacote.
Se uma referência de ambiente for especificada com o parâmetro reference_id, o procedimento armazenado populará os parâmetros de projeto e pacote com valores literais ou valores referenciados das variáveis de ambiente correspondentes. Se referência de ambiente for especificada, valores de parâmetro padrão serão usados durante a execução do pacote. Para determinar exatamente quais valores são usados para uma determinada instância de execução, use o valor de parâmetro de saída execution_id desse procedimento armazenado e consulte a exibição execution_parameter_values.
Somente pacotes marcados como pacotes de ponto de entrada podem ser especificados em uma execução. Se um pacote que não for ponto de entrada for especificado, a execução falhará.
Exemplo
O exemplo a seguir chama catalog.create_execution para criar uma instância de execução para o pacote Child1.dtsx, que não está no Scale Out. Project1 do Integration Services contém o pacote. O exemplo chama catalog.set_execution_parameter_value para definir valores para os parâmetros Parameter1, Parameter2 e LOGGING_LEVEL. O exemplo chama catalog.start_execution para iniciar uma instância de execução.
Declare @execution_id bigint
EXEC [SSISDB].[catalog].[create_execution] @package_name=N'Child1.dtsx', @execution_id=@execution_id OUTPUT, @folder_name=N'TestDeply4', @project_name=N'Integration Services Project1', @use32bitruntime=False, @reference_id=Null
Select @execution_id
DECLARE @var0 sql_variant = N'Child1.dtsx'
EXEC [SSISDB].[catalog].[set_execution_parameter_value] @execution_id, @object_type=20, @parameter_name=N'Parameter1', @parameter_value=@var0
DECLARE @var1 sql_variant = N'Child2.dtsx'
EXEC [SSISDB].[catalog].[set_execution_parameter_value] @execution_id, @object_type=20, @parameter_name=N'Parameter2', @parameter_value=@var1
DECLARE @var2 smallint = 1
EXEC [SSISDB].[catalog].[set_execution_parameter_value] @execution_id, @object_type=50, @parameter_name=N'LOGGING_LEVEL', @parameter_value=@var2
EXEC [SSISDB].[catalog].[start_execution] @execution_id
GO
Valor do código de retorno
0 (êxito)
Conjuntos de resultados
Nenhum
Permissões
Este procedimento armazenado exige uma das seguintes permissões:
Permissões READ e EXECUTE no projeto e, se aplicável, permissões READ no ambiente referenciado
Associação à função de banco de dados ssis_admin
Associação à função de servidor sysadmin
Se @runinscaleout é 1, este procedimento armazenado exige uma das seguintes permissões:
Associação à função de banco de dados ssis_admin
Associação à função de banco de dados ssis_cluster_executor
Associação à função de servidor sysadmin
Erros e avisos
A lista a seguir descreve algumas condições que podem gerar erros ou avisos:
O pacote não existe.
O usuário não tem as permissões apropriadas.
A referência do ambiente, reference_id, não é válida.
O pacote especificado não é um pacote de ponto de entrada.
O tipo de dados da variável de ambiente referenciada é diferente do tipo de dados do projeto ou parâmetro de pacote.
O projeto ou pacote contém parâmetros que requerem valores, mas nenhum valor foi atribuído.
As variáveis de ambiente referenciadas não podem ser localizadas no ambiente especificado pela referência de ambiente reference_id.
Consulte Também
catalog.start_execution (Banco de dados SSISDB)
catalog.set_execution_parameter_value (Banco de Dados SSISDB)
catalog.add_execution_worker (Banco de dados SSISDB)