首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

请问关于Jdbc中setString()有关问题

2012-01-31 
请教关于Jdbc中setString()问题setString()对于符号是不是有什么特殊的限制呀?我在java中使用jdbc的接口se

请教关于Jdbc中setString()问题
setString()对于符号是不是有什么特殊的限制呀?

我在java中使用jdbc的接口setString()方法向oracle的存储过程传参数的时候,遇到了一个很奇怪的问题!如果传入的参数中的字符数量(%)超过60个(在60个以内没有问题!),对于在oracle中的sql进行模糊检索(使用like语句),却不能得到任何纪录,但是如果直接在pl/sql   developer   中使用没有问题!这是怎么回事呀?大家有没有遇到过呢?

比如:
在java中
……
stmt.setString(1,   "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ");
……
如果上面的%超过60个,那么通过stmt.execute()执行后的结果,没有任何值返回!
在60个以内没有问题!

在pl/sql中
select   *  
from   table1  
where   colum   like   ' "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% '
在这里没有这个限制,但必须要在2000个字节以内!

[解决办法]
up
[解决办法]
楼主搞测试的?要输入这么怪的数据.
不太清楚
[解决办法]
Lz在进行压力测试么?这样做似乎没什么实际意义。
既然Pl/sql 运行没有问题,那就说明是stmt.setString()函数的问题。

热点排行