catalog.create_execution (Banco de Dados SSISDB)
se aplica a:SQL Server
SSIS Integration Runtime no Azure Data Factory
Aplica-se a:SQL Server
Cria uma instância de execução no catálogo do Integration Services.
Este procedimento armazenado usa o nível de log padrão 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 de ambiente. Este parâmetro é opcional. O reference_id é bigint.
[@use32bitruntime =] use32bitruntime
Indica se o tempo de execução de 32 bits deve ser usado para executar o pacote em um sistema operacional de 64 bits. Use o valor de 1 para executar o pacote com o tempo de execução de 32 bits ao executar em um sistema operacional de 64 bits. Use o valor 0 para executar o pacote com o tempo de execução de 64 bits ao executar em um sistema operacional de 64 bits. Este parâmetro é opcional. O Use32bitruntime é bit.
[@runinscaleout =] runinscaleout
Indique se a execução está em ScaleOut. Use o valor de 1 para executar o pacote em ScaleOut. Use o valor 0 para executar o pacote sem ScaleOut. Este parâmetro é opcional. Se não for especificado, seu valor será definido como DEFAULT_EXECUTION_MODE em [SSISDB]. [catálogo]. [catalog_properties]. O runinscaleout é pouco.
[@useanyworker =] useanyworker
Indique se algum Operador de Expansão tem permissão para fazer a execução.
Use o valor de 1 para executar o pacote com qualquer Operador de Expansão. Quando você define
@useanyworker
como true, qualquer trabalhador cuja contagem máxima de tarefas (conforme especificado no arquivo de configuração do trabalhador) ainda não foi alcançada está disponível para executar o pacote. Para obter informações sobre o arquivo de configuração do trabalhador, consulte de trabalho de expansão do Integration Services (SSIS).Use o valor 0 para indicar que nem todos os Trabalhadores de Expansão têm permissão para executar o pacote. Ao definir
@useanyworker
como false, você precisa especificar os trabalhadores que têm permissão para executar o pacote usando o Gerenciador de Expansão ou chamando o procedimento armazenado[catalog].[add_execution_worker]
. Se você especificar um trabalhador que já esteja executando outro pacote, o trabalhador concluirá a execução do pacote atual antes de solicitar outra execução.
Este parâmetro é opcional. Se não for especificado, seu valor será definido como 1. O useanyworker é pouco.
[@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 preencherá os parâmetros do projeto e do pacote com valores literais ou valores referenciados das variáveis de ambiente correspondentes. Se a referência de ambiente for especificada, os 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 instância específica de execução, use o valor do parâmetro de saída execution_id deste 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 é um 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á em Scale out. O Integration Services Project1 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 (sucesso)
Conjuntos de resultados
Nenhum
Permissões
Este procedimento armazenado requer 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 for 1, o procedimento armazenado requer 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 um erro ou aviso:
O pacote não existe.
O usuário não tem as permissões apropriadas.
A referência de 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 parâmetro project ou package.
O projeto ou pacote contém parâmetros que exigem valores, mas nenhum valor foi atribuído.
As variáveis de ambiente referenciadas não podem ser encontradas no ambiente que a referência de ambiente, reference_id, especifica.
Ver 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)