使用 BIDS 从带有参数的 Informix ODBC 源中提取数据
Posted
技术标签:
【中文标题】使用 BIDS 从带有参数的 Informix ODBC 源中提取数据【英文标题】:Using BIDS to extract data from Informix ODBC source with parameters 【发布时间】:2014-10-10 19:14:18 【问题描述】:正如标题中所说,我正在尝试使用参数从我的 Informix ODBC 源中提取数据。我有两个要传递的参数。两者都是 DateTime,我正在尝试获取当前的开始日期,例如 2014-10-10 00:00:00
和结束日期 2014-10-10 23:59:59
。
如果我使用普通查询进行此操作:
SELECT * FROM TABLENAME
WHERE STARTDATETIME BETWEEN '2014-10-10 00:00:00' AND '2014-10-10 23:59:59'
一切正常。但是,如果我尝试使用我设置的参数:
SELECT * FROM TABLENAME
WHERE STARTDATETIME BETWEEN ? AND ?
我收到以下错误:
Open Database Connectivity (ODBC) error occurred. state: '07001'.
Native Error Code: -11012. [Informix][Informix ODBC Driver]Wrong number of parameters.
我觉得这与我的查询有关,但我一直在寻找,但一无所获。任何人都可以帮助我吗?谢谢!
【问题讨论】:
【参考方案1】:当您使用参数化查询 ('?') 时,需要绑定。 您可能正在使用 ODBC API SQLBindCol 来绑定它。 查询中的参数个数(在本例中为 2) 应该与绑定 API 调用的数量相匹配。 请检查您的 ODBC 代码以确保正确完成绑定。
【讨论】:
以上是关于使用 BIDS 从带有参数的 Informix ODBC 源中提取数据的主要内容,如果未能解决你的问题,请参考以下文章
存储过程如何在从 BIDS 调用时不返回行,但在使用相同参数时从 SSMS 调用时返回行?
在 Informix 10 中检索或删除带有 blob 的行