【发布时间】:2013-10-18 09:31:13
【问题描述】:
在标记为重复之前,我已阅读以下内容:
- Oracle "IN clause" from parameter
- Parameterize an SQL IN clause
- problem using Oracle parameters in SELECT IN
假设我在报告服务器上发布的 .rdl 报告中的数据源上有此查询:
SELECT ...
FROM ...
WHERE c.cluster_cd IN (:paramClusterCD)
Report Builder 2.0 自动将参数识别为@paramClusterCD。在我的 wpf 项目中,我必须创建一个具有多个值的参数,如下所示:
var arrCluster = (lbCluster.SelectedItems.Cast<CLUSTER_MSTR>().ToList()).Select(x => x.CLUSTER_CD).ToArray();
string strCluster = string.Join(",", arrCluster); // result is "1,2,3"
现在每当我运行(在报表查看器中传递参数)时,都会出现此错误:
ORA-01722: invalid number
上一篇文章中的解决方法不起作用,因为这是一份 SSRS 报告。
【问题讨论】:
-
arrCluster 通常有多少个条目?
-
通常为 10-15。您提供的第一个答案可能会有所帮助,但我想要函数的
CREATE OR REPLACE FUNCTION..代码及其使用方式。我已经阅读了整篇文章,但有很多修改和缺乏真实的文档。
标签: c# sql wpf oracle reporting-services