sql - 存储在 SSIS 外部的变量值

标签 sql variables ssis

这只是高级程序员的 SSIS 问题。我有一个包含 clientid、clientname、Filename、Ftplocationfolderpath、filelocationfolderpath 的 sql 表

此表为我的每个客户保存了唯一的记录。随着我的客户列表的增长,我在我的 sql 表中为该客户添加了一个新行。

我的问题是:我可以使用我的 sql 表中的值并以某种方式根据客户端 ID 在我的 SSIS 包变量中引用它们吗?

sql 表的原因是有时我们会收到更改我们向外部发送的文件的交付或文件名的请求。我们希望能够在 sql 表中动态地动态更改这些内容,而不必每次都导出包并手动更改然后重新导入包。每个客户端都有自己的 SSIS 包

让我知道这是否可行..我将不胜感激

最佳答案

是的,这是可能的。有两种方法可以解决这个问题,这取决于作业的运行方式。首先是您是为单个客户端运行单个作业运行,还是为多个客户端运行单个作业运行。

无论哪种方式,您都将使用执行 SQL 任务从数据库中检索数据并将其分配给您的变量。

  1. 您正在为一个客户竞选。这相当简单。在结果集中,选择单行选项并将单行的结果映射到包变量并开始处理。
  2. 您正在为多个客户竞选。在结果集中,选择完整结果集 并将结果分配给类型为 Object 的单个包变量 - 为其指定一个有意义的名称,例如 ObjectRs。然后您将添加一个 ForEachLoop 枚举器:
    • 类型: Foreach ADO 枚举器
    • ADO 对象源变量:选择 ObjectRs
    • 枚举器模式:所有表中的行(仅限 ADO.NET 数据集)

在变量映射中,将所有列按顺序映射到包变量。这有效地将包转换为一系列循环的单个事务。

关于sql - 存储在 SSIS 外部的变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56189362/

相关文章:

sql-server - SSIS Excel 错误栏

sql - 如何在 MYSQL 中按名称进行订单,就像在 Window 中使用订单名称一样

php - 使用 PHP 从 SQL 选择中获取第一个/最后一个值

python - 在 Python 中存储快速变化的数据的最佳方式是什么?

SSIS 项目无法在自托管代理上构建

sql - 在 SSIS 的查找中使用变量

mysql - 多行数据读取器

sql - 使用 IN 关键字查询

sql - & IN WHERE 子句

c++ - 为什么允许跳过变量定义(使用 goto)?