首页 > 数据库 > mysql教程 > 如何在 SSIS 执行 SQL 任务中将变量作为参数传递?

如何在 SSIS 执行 SQL 任务中将变量作为参数传递?

Linda Hamilton
发布: 2025-01-06 18:16:40
原创
121 人浏览过

How to Pass Variables as Parameters in an SSIS Execute SQL Task?

在执行 SQL 任务 SSIS 中将变量作为参数传递

在 SSIS 包中涉及多个数据库操作通常需要动态设置 SQL 参数。 SSIS 中的执行 SQL 任务提供了一种实现此目的的便捷方法。

假设您有一个 SSIS 包,它从平面文件中检索数据并将其插入到数据库表中,利用执行 SQL 任务创建临时表使用参数化查询。您的目标是通过传递指定日期、投资组合 ID 和股票类型作为变量的参数来使查询动态化。

要在执行 SQL 任务中完成此操作:

1.将 SQLSourceType 设置为 Direct Input

这表示 SQL Statement 属性将直接指定 SQL 查询。

2.在 SQL 语句中定义变量参数

修改 SQL 语句以使用问号 (?) 作为参数的占位符。例如:

CREATE TABLE [tempdb].dbo.##temptable 
(
date datetime,
companyname nvarchar(50),
price decimal(10,0),
PortfolioId int,
stype nvarchar(50)
)

Insert into [tempdb].dbo.##temptable (date,companyname,price,PortfolioId,stype) 
SELECT   date,companyname,price,PortfolioId,stype
FROM        ProgressNAV
WHERE     (Date = ?) AND (PortfolioId = ?) AND (stype in (?))
ORDER BY CompanyName
登录后复制

3。将变量映射到参数

在“执行 SQL 任务”编辑器的“参数映射”部分中,添加 SQL 语句中的每个参数。然后,将每个参数映射到其相应的 SSIS 变量:

| Parameter | SSIS Variable |
|---|---|
| Date | @Date |
| PortfolioId | @PortfolioId |
| stype | @Stypet |
登录后复制

4。运行任务

执行后,执行 SQL 任务会将分配给这些变量的值注入到查询中,确保检索到适当的数据并将其插入到临时表中。

以上是如何在 SSIS 执行 SQL 任务中将变量作为参数传递?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板