以编程方式加载 SSIS 包配置

2023-12-22

我正在 SSIS 中制作一个框架,用于从可配置文件夹加载文件并将它们与数据库中的逻辑作业相匹配。在此作业中配置了包名称,并在 SSIS 中我在运行时执行此包。

我想根据加载的作业以编程方式加载此包的包配置。 SSIS SQL Server 包配置不是一种选项,因为它只在运行时为包本身加载一次值,但我想在运行时加载已与作业一起存储的特定包配置(作业有一个包,但有很多封装配置)...

示意图: folderA -> 文件 A.1 -> 作业 A -> 加载作业 A 的包配置 -> 在作业 A 中执行包。

那可能吗?


我们使用父包和子包执行类似的操作,为具有不同配置值的不同客户端运行标准包。父包使用环境变量和我们的配置表来提取该特定进程的配置值。子表配置为接受在执行包任务中从父包发送的配置变量。如果需要的话,这还允许我们为父包中的特定客户端执行一些自定义步骤(这里大约是 100% 的时间)。因此,如果您从一个客户端获取一个文件,但他们无法以标准子导入使用的格式提供,您可以执行转换步骤以使文件为标准导入做好准备,然后运行标准。或者,您可以在标准包之后添加步骤,以向客户发送电子邮件,但需要在数据中修复例外情况,例如,如果只有一个客户需要这样做。

您可以在父包中为要发送的每条配置信息创建变量,通常发送到子包中连接的其他变量或连接字符串。然后,您放入一个使用与子包的连接的 Excute 包任务。

然后,在子包中,转到 SSIS 菜单并选择包配置和添加。然后对于配置类型,您选择父包变量。您将为要发送到子包的每个配置项创建一个父包变量。我们发送的内容包括 client_id、客户端特定数据库的连接字符串、可能因客户端而异的变量等。

我们还将所有配置存储在元数据库的表中,其中存储有关导入的信息。因此,我们将父包设置为使用环境变量来告诉它连接到哪个数据库来获取配置信息。然后第二个配置是存储配置信息的 SSISConfiguration 表。我们通过在测试包之前运行的插入脚本按服务器填充该信息(通常会因服务器而异,dev、qa 和 prod 的连接字符串不同)。

有关更多详细信息,请参阅联机丛书中的执行包任务,它将向您展示如何设置包以传递变量。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式加载 SSIS 包配置 的相关文章

  • 将多个平面文件导入到多个 SQL 表

    这是我的文件夹设置 这是文件设置 这个想法是遍历文件夹并将文件内容放入数据库上的表 File dbo 还有 FileB FileC 等 所有文件夹的文件名结构都相同 我有这个 ssis 包 我在其中使用 foreachloop gt 数据流
  • 枚举DataFlow脚本组件中的RecordSet作为数据源

    这是一个 SSIS 相关问题 我有一个设置为对象类型的变量 一个数据流将一些过滤的行导入到记录集中 并且该记录集存储在对象变量中 在完全独立的数据流中 我需要使用该记录集作为源 所以我创建了一个脚本组件并告诉它它将是一个数据源 我将其设置为
  • 在 SSIS 中插入新记录之前如何清空目标表?

    我使用 SSIS 生成和转换新数据 以便以后在新系统中使用 每次运行 SSIS 包时我都会遇到问题 它不断将新记录插入到我的目标表中 如何先清空目标表 OLE DB Destination 然后插入新生成的记录 目前此问题的解决方法是执行d
  • 为什么我的 ODBC 连接在 Visual Studio 中运行 SSIS 加载时失败,但在使用执行包实用工具运行相同包时却失败

    我正在 SSIS 2012 中处理数据集市加载包 当尝试在 Visual Studio 中执行该包时 我收到此错误 AcquireConnection方法调用连接管理器数据 Warehouse ssusr 失败 错误代码为 0xC00140
  • SSIS ODBC SQL 参数

    我在 odbc 源数据流任务中有一个 SQL 命令需要采用参数 但不存在添加参数的选项 我尝试将数据库添加为与 ODBC 提供程序的 ADO NET 连接 但也没有可用的参数 还尝试将其作为 OLEDB 连接 但没有可用于 ODBC 的提供
  • SSIS 脚本任务在服务器上失败,并出现错误“无法加载脚本以执行”

    我有 3 个带有脚本任务的 SSIS 包 它们都执行非常相似的操作 查询 SQL Server 数据库 循环遍历结果 然后为每一行调用 SOAP Web 服务 这些包在本地运行良好 并且在开发和 QA 服务器上运行良好 在生产服务器上 1
  • 访问 SSIS 脚本任务静态构造函数中的可配置值

    我有一个 SSIS 包 其中包含需要第 3 方程序集的脚本任务 由于不允许我将此程序集放置在 SSIS 服务器上的 GAC 中 因此我在运行时在脚本任务的静态构造函数中绑定该程序集 这article https blogs msdn mic
  • 在 SSIS 中使用 OLE DB 从 Sybase 提取数据时出错

    我在 SSIS 2017 中使用 Advantage 11 OLE DB Provider 从 Sybase 提取数据时遇到问题 我可以连接到数据库 查看表列表 并且在选择表作为数据源时 我可以看到列 但是 当我单击 预览 或运行数据流任务
  • 从原始数据创建 n 个新行,例如 (1000....1000+n)

    我需要从 Excel 工作簿中读取数据 其中数据以这种方式存储 Company Accounts Company1 3000 3999 Company2 4000 4019 4021 4024 在 SSIS 中使用 OLE DB 目标的预期
  • 如何在 ssis 包 2016 中捕获毫秒时间戳

    如何在 ssis 包 2016 中捕获当前时间戳 我声明了一个变量并使用表达式 但缺少毫秒 currenttimestamp DT WSTR 50 DT DBTIMESTAMP System StartTime 我也想要毫秒 Thanks
  • 生成脚本 - 仅数据 - 循环依赖项发现错误

    我正在尝试生成数据库中所有数据的脚本 以便我可以将数据移动到另一台服务器上的相同数据库 在 SQL Server 2012 中 我右键单击源数据库 任务 gt 生成脚本 gt 为整个数据库和所有数据库对象编写脚本 gt 高级 gt 要编写脚
  • 删除或更改 ETL 中的记录

    我有一个表 我在上面构建了 ETL 服务 货物记录 到达 离开 进入表格 我已经这样做了 我的桌子将被删除 当项目标识符第二次到达数据库时 两条记录都被删除 label cost time x2 29 14 5 2020 01 00 00
  • SSIS:“错误:表达式“@[User::FileName].....无法写入属性”的结果

    过去 10 个小时我一直在尝试解决以下问题 我有一个 ForEach 循环容器 它在我的控制流中枚举 Excel 文件名 在 ForEach 循环容器中 我有一个将数据导入 Sql Server 的 Excel 源 这使用 User Fil
  • 更改使用文本文件的 SSIS 日志提供程序创建的文件的文件编码

    我是 SSIS 新手 我已经设计了一个包并为文本文件配置了 SSIS 日志提供程序 这工作正常并且日志文件已成功生成 我们有一个监控团队 他们使用这个日志文件进行监控 他们无法读取日志文件 因为文件编码是 Unicode 格式 他们期望使用
  • 年函数不支持 dt_wstr

    我无法使用下面的代码应用转换 出现错误 年函数不支持 dt wstr 我使用的表达式是 DT I4 DT WSTR 4 YEAR fisc wk end dt RIGHT 0 DT WSTR 2 MONTH fisc wk end dt 2
  • 有没有办法以编程方式轻松更改多个 SSIS 包上的服务器名称?

    作为发布周期的一部分 我们正在创建多个 SSIS 包来迁移大型数据库 我们最终可能会得到大约 5 10 个 SSIS 包 由于我们有 4 个环境 开发 QA 登台 生产等 是否有一种有效的方法可以在每个 SSIS 包经历不同的服务器环境时更
  • 如何在SSIS中将数据库名称设置为变量?

    在我当前的项目中 数据库名称不断变化 我不想每次都修改我的 OLE DB 源 因此我想将其设置为变量 也就是说 在每个 OLE DB Source 中 我可以将它用作参数 但是 SSIS 似乎不允许将数据库名称作为参数传输 那么我应该怎样做
  • SSIS 正在删除平面文件源导入的记录

    我在 SSIS 2008 中遇到了一个非常奇怪的问题 基本工作流程如下 使用平面文件源 CSV 导入 SSIS 推入 SQL 当进程在开发环境中运行时 一切正常 当 dtsx 包投入生产时 使用完全相同的平面文件源 文件中的最后一条记录被删
  • 我有两个 Foreach 循环,它们具有相同的枚举值。那么我该如何处理呢?

    我将两个变量声明为名为 a 和 b 的 对象 并有一个简单的 SQL 任务 select code from code list 使用完整结果集 我尝试将结果传递给声明的变量 a 和 b 并在脚本任务中使用它们 a和b 两个不同的 fore
  • 将变量传递给 SSIS 中的项目参数

    我是这个网络的新手 希望我能找到这个问题的答案 我有一个 SSIS 项目 其中包含多个使用项目参数的包 我正在尝试更新项目参数 例如 PeriodStart 2014年5月31日 我找不到动态写入项目参数的方法 我在 4 0 框架中使用 V

随机推荐

  • 正浮点数的正则表达式

    例如 10 0 1 1 23234 123 1230 000001 1 000 3 以及错误的例子 0001 2 12 1 01 2 3 EDIT 标准 JavaScript 正则表达式 在这里试试这个 1 9 d 0 d See it 在
  • Dotnet Core 3.1:如何使用具有文件绝对路径的 AddJsonFile?

    我有一个 dotnet 应用程序 我需要从两个相对路径 常规路径 中提取配置appsettings Json appsettings Development json 并且还可以从绝对路径 config appsettings json 我
  • 如何在特定时间执行循环

    我如何在指定的时间内执行特定的循环 Timeinsecond 600 int time 0 while Timeinsecond gt time do something here 我如何在这里设置时间变量 如果我可以使用 Timer 对象
  • 检查发件人电子邮件地址

    我的 Outlook 框中有一个 VBA 侦听器 用于在收到来自特定电子邮件的邮件时执行操作 问题是 如果我收到错误邮件 未送达电子邮件 那么我的条件是在不具有该属性的邮件上运行 因此我的方法崩溃 我也不知道主题是什么 有谁知道我是否可以测
  • 泛型 在 C# 中不起作用,即使运行没有任何错误

    我正在使用 Silverlight 5 VS 2010 创建一个 C Web 应用程序 首先 我创建了控制台应用程序 一切正常 但是当我在网络应用程序中执行此操作时会出现问题 即使在网络应用程序中 它对于特定的设置数据类型也能正常工作 例如
  • 旧版本的 spring boot 无法在 Java 11 上启动

    我正在使用 spring boot 应用程序的 1 4 1 RELEASE Java 8 一切正常 但是 当我将 java 版本更新到 11 时 我无法使用命令运行应用程序mvn clean spring boot run 同时我可以打包成
  • 覆盖getter只需要@synthesize

    我想覆盖惰性实例化的 getter 并保留默认的 setter 我需要 synthesize 吗 Why interface Foo property strong nonatomic NSObject bar end implementa
  • 表达式/语句树

    进一步更新问题 我一直在尝试使用 NET 4 中的表达式树在运行时生成代码 并且我一直在尝试实现foreach通过构建表达式树来声明 最后 表达式应该能够生成执行此操作的委托 Action
  • 如何在 git 上执行 3 向视觉差异?

    我想对存在于 2 个不同分支中的单个文件进行 3 路比较 即每个分支中的最后一次提交 并考虑共同的祖先 我想使用一个允许进行三向比较的外部工具 我正在考虑使用 git difftool 但据我所知 它只允许比较给定文件的任何两个版本 我可以
  • 计算嵌套列表中包含特定元素的列表的数量

    我有一个列表 例如 res a b a a b c a 我想计算有多少个列表包含特定字母 例如 a 包含在 3 个列表中 b 包含在 2 个列表中 c 包含在 1 个列表中 下面的代码是我到目前为止所拥有的 count 0 docs a l
  • Visual Studio 2013 的 RC 更新 2 共享项目

    我最近安装了 Visual Studio 2013 的 RC 更新 2 在浏览通用应用程序的模板时 我发现了一个项目 Shared其中有一个扩展 shproj 当我在网上浏览一些材料时 我发现它是一个用于共享代码和文件的项目模板 我认为这很
  • clang-format 正则表达式语法参考

    我希望 clang format 不修改我用来分隔函数的注释行 我认为commentPragmas是正确的选择 但我找不到有关 clang format 正则表达式格式的信息 I tried commentPragmas 捕捉我的分隔线 看
  • 如何在 PHP 中包含其他文件?

    我刚刚开始在家里创建一个网站 当然 我必须有这两个页面才能快速完成我的网站 footer php header php 所以我创建了这些页面并放置了一些内容 还创建了一个索引页作为index php在 的里面htdocs folder 然后
  • 并行运行多个查询动画

    我有两个路由组件及其容器 我已为其设置了动画触发器 slide 其中我查询每个并相应地设置动画 div div
  • 如何检测屏幕脚轮android,检测点击压力

    我开发了一个玩起来很有趣的应用程序 但有一些顽皮的人通过使用不同类型的方式破坏其他人的乐趣屏幕脚轮然后玩弄自动化脚本并欺骗用户 这是一个链接 http code google com p androidscreencast 一位非常著名的屏
  • MagicalRecords 从 JSON / NSDictionary 导入数据。导入关系

    我对人际关系有疑问 我必须使用 NSManagedObject 类 Team 和 Player 团队可以包含许多玩家 玩家只能包含一支球队 以下是两个请求的 JSON team id 1 name Chicago Bulls city Ch
  • Excel VBA 工作簿.ChangeFileAccess

    我在使用 VBA 更改 Excel 工作簿上的文件访问模式时遇到问题 我使用的是 Office 2010 我希望能够适当地在只读和读写模式之间切换 然而 似乎将工作簿从读 写更改为只读 然后再返回 如下面的代码所示 在尝试访问工作簿对象的任
  • XML 两个同名标签

    在我的 XML 文档中 我有两个同名的标签 都称为 item 我现在已经为此文档创建了一个 XML 架构 考虑到我有两个同名的标签 我的 XML 架构准确吗 XML文档
  • 无法在我自己的代码中将 CHOLMOD 与 CUDA 加速一起使用

    我正在尝试使用CHOLMOD with CUDA加速度SuiteSparse 4 4 4 我按照用户指南编译了它 我可以运行gpu sh under Demo文件夹成功 这表明GPU正在做部分工作 但是 当我尝试使用运行我自己的代码时CHO
  • 以编程方式加载 SSIS 包配置

    我正在 SSIS 中制作一个框架 用于从可配置文件夹加载文件并将它们与数据库中的逻辑作业相匹配 在此作业中配置了包名称 并在 SSIS 中我在运行时执行此包 我想根据加载的作业以编程方式加载此包的包配置 SSIS SQL Server 包配