我有一个SSIS软件包,当前正在使用Visual Studio运行。我想知道python中有什么机制可以执行那些SSIS包。
答案 0 :(得分:1)
您可以使用DTExec
运行SSIS程序包。您基本上是启动一个外部进程来运行该程序包。您可以执行存储在SQL Server上的包以及文件系统上的包。这是一个非常灵活的工具,带有命令行参数,可以支持多种情况。
答案 1 :(得分:0)
您可以通过“执行流程任务”来执行此操作。使用以下条目
仍在努力清理错误处理,以便它可以更好地报告错误,但可以正确地处理脚本。
答案 2 :(得分:0)
您可以执行一个 Transact-SQL 脚本来调用 dtsx 包的执行。
这比其他答案有优势,因为您不需要访问 DTExec(需要访问运行 SSIS 服务的机器)并且适用于其他编程语言(如果不是全部的话,大多数都允许)执行TSQL)。
唯一的要求是:
Microsoft 快速入门:SSIS with TSQL
存储过程文档:catalog.create_execution
代码示例,摘自快速入门:
Declare @execution_id bigint
EXEC [SSISDB].[catalog].[create_execution] @package_name=N'Package.dtsx',
@execution_id=@execution_id OUTPUT,
@folder_name=N'Deployed Projects',
@project_name=N'Integration Services Project1',
@use32bitruntime=False,
@reference_id=Null
Select @execution_id
DECLARE @var0 smallint = 1
EXEC [SSISDB].[catalog].[set_execution_parameter_value] @execution_id,
@object_type=50,
@parameter_name=N'LOGGING_LEVEL',
@parameter_value=@var0
EXEC [SSISDB].[catalog].[start_execution] @execution_id
GO