当尝试使用 Oracle OLE DB 提供程序输入带参数的 SQL 查询时,出现以下错误:
无法从 SQL 命令中提取参数。提供程序可能无法帮助解析命令中的参数信息。在这种情况下,请使用“来自变量的 SQL 命令”访问模式,其中整个 SQL 命令存储在变量中。
附加信息:
提供程序无法导出参数信息,并且尚未调用 SetParameterInfo。 (适用于 Oracle 的 Microsoft OLE DB 提供程序)
我已尝试遵循此处的建议,但不太明白需要什么:针对 Oracle 的参数化查询
有任何想法吗?
要扩展问题中给出的链接:
- 创建包变量
- 双击包变量名称。 (这允许您访问变量的属性)
- 将属性“EvaluateAsExpression”设置为 true
- 在表达式生成器中输入查询。
- 将 OLE DB 源查询设置为来自变量的 SQL 命令
表达式生成器可以使用变量动态创建表达式来创建“参数化查询”。
因此以下“正常”查询:
select * from book where book.BOOK_ID = ?
可以在表达式生成器中写为:
"select * from book where book.BOOK_ID = " + @[User::BookID]
然后,您可以使用表达式生成器进行空处理和数据转换。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)