sql - SSIS 将值保存为参数

标签 sql sql-server variables ssis etl

我在执行 sql 任务中使用 SELECT UpdateDate FROM dbo.log 命令。我对此很陌生,所以请耐心等待。我想将该值存储为一个变量,然后将其传递到后续数据流的 where 子句中。我的问题是:

  1. 设置执行 SQL 任务的正确方法是什么。一般来说,我有 OLE DB 连接和直接输入上面的查询。结果集设置为单行,然后我将其存储到我创建的名为 User::UpdateDate 的变量中。出于某种原因,这不起作用?
  2. 然后我想在数据流中调用这个日期。 IE。 SELECT * FROM Users WHERE RecordDate > User::UpdateDate。我相信语法是不同的。

我真的很感激能提供一些帮助。非常感谢

最佳答案

在您的执行 SQL 任务编辑器中,如下所示配置参数映射,显然使用您自己的变量,在本例中我使用的是 PackageStartTime

enter image description here

然后在您的 SQL 语句中,使用以下内容:

SELECT * FROM Users WHERE RecordDate > ?

要从 SQL 语句中保存值,您需要将结果集设置为单行并配置结果集,如下例所示:

enter image description here

关于sql - SSIS 将值保存为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55182023/

相关文章:

sql - 避免 CurrentAccountBalance 更新时出现 SQL 死锁

sql - 前 12 个月间隔和 ISO 周的平均值

sql - 如何使用标准查询或使用 UDF 标记一行并将其特定值存储在 Hive 中?

sql - 查询显示 72 小时内因同一原因出院并重新入境的患者人数

Sql:从两个表中选择数据而不重复第一个表的值?

sql-server - AWS/Azure 中的大规模分布式应用程序

Javascript成员变量未定义

sql - 从表 A 中选择不在表 B 中的列组合

java 在静态方法和主方法中处理变量声明和初始化

python - 如何在 Python 中创建不可变列表?