java调用oracle存储过程 关于sql里面in函数参数的问题
in函数里面的参数是字符类型的,如'1330251','1336140'直接使用值代替参数,就可以查出来,但是传参进去就查不出任何结果,打印出来pkStagesPerso...
in函数里面的参数是字符类型的,如'1330251','1336140'
直接使用值代替参数,就可以查出来,但是传参进去就查不出任何结果 ,打印出来pkStagesPersonArray 的参数值为:'1330251','1336140',感觉没错,但是就是没值,求高手指点一二。 展开
直接使用值代替参数,就可以查出来,但是传参进去就查不出任何结果 ,打印出来pkStagesPersonArray 的参数值为:'1330251','1336140',感觉没错,但是就是没值,求高手指点一二。 展开
2个回答
展开全部
调用存储过程是java 把组合起来的字符串传到数据库后台操作,如果你in ( pkStagesPersonArray),传到数据库后台还是 in ( pkStagesPersonArray) 而非你想要的 in('1330251','1336140' )所以你应该把pkStagesPersonArray 里面的内容转换成 '1330251','1336140' 再拼接起来
更多追问追答
追答
你可以看看plsql 语法 你的单引号多了
举个栗子
a.mobileid in('123','456','789')
语法是这样的 不是(''123','234','345'')
展开全部
pkStagePersonArray 是什么数据类型,可能是和数据类型有关,'1330251','1336140'这个值怎么传进去的。
更多追问追答
追问
字符串。
追答
图上pkStagePersonArray 的值引号好多, 按现在应该是 in (" '1330251','1336140' ") 这个样子,可以把pkStagePersonArray 按逗号先分隔开,在连接成'1330251','1336140' 这个格式
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询