我有一个SQL Server Integration Services项目,它使用带有SQL命令的OLE DB源作为数据访问模式查询SQL Server 2005数据库.
我正在尝试参数化我的SQL查询,但语法不是@PARAM,当我尝试使用时?并单击参数我收到一条错误,指出"无法从SQL命令中提取参数".
我正在做类似的事情
SELECT * FROM [dbo].[TabledValuedFunction] (?)
Run Code Online (Sandbox Code Playgroud)
小智 7
在创建动态SQL语句时,我使用表达式的运气要好得多.所以在这个假设的情况下,我会创建2个变量Qry1和Qry1Param1.
在Qry1变量中,我会使用表达式编辑器来创建看起来像的东西
"SELECT * FROM [dbo].[TabledValuedFunction] where tbl_key = " + @[User::Qry1Param1]
Run Code Online (Sandbox Code Playgroud)
Qry1Param1变量就像是1.
所以Qry1评估为
SELECT * FROM [dbo].[TabledValuedFunction] where tbl_key = 1
Run Code Online (Sandbox Code Playgroud)
然后,您可以更改OLEDB数据源以使用来自变量的SQL命令的数据访问模式,并输入User :: Qry1变量.
| 归档时间: |
|
| 查看次数: |
17901 次 |
| 最近记录: |