【问题标题】:Load package from SQL Server从 SQL Server 加载包
【发布时间】:2020-10-30 18:02:48
【问题描述】:

我使用以下文章并行执行SSIS包。https://www.sqlservercentral.com/articles/importing-files-in-parallel-with-ssis。在本文中,它解释了从文件夹位置执行包。在我的情况下,我正在部署这两个包。我尝试了以下代码:

 Application app = new Application();
 Package pkg = app.LoadFromSqlServer(dtsxPackage, "localhost",null, null, null);

我遇到错误

找不到文件夹“包名”

包部署如下。

使用“ParallelExecusion.dtsx”我尝试执行“FileSync.dtsx”包。我将包路径设置为“FileSync\TeamR\FileSync.dtsx”

【问题讨论】:

  • 为什么文件名和目录名中有空格/制表符和非数值?
  • 我编辑图像以隐藏真实值

标签: ssis ssis-2012


【解决方案1】:

显示的代码用于加载存储在名为 msdb 的 SQL Server 数据库中的包。它将使用 sys.dtspackages90 或 sys.ssispackages 中的二进制文件(表名近似),但仅适用于在包部署模型 (2005-2008R2) 下开发和部署的包或为 SQL Server 2012+ 明确定义的项目

您的屏幕截图显示的是一个项目部署模型,它是一个部署到 SSISDB 数据库的 .ispac。虽然该包位于 SQL Server 上,但您不使用 LoadFromSqlServer 方法。相反,您将使用与数据库中的 CLR 方法相同的方法。

  1. CreateSsisServerExecution

  2. Set any Parameter/Property values

  3. Start

就个人而言,除非我有一个强大的用例需要控制包执行的各个方面,否则我只会在此处使用 TSQL(并删除代码中的类依赖项)Execute SSIS Packages

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-26
    • 1970-01-01
    • 2018-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多