用ASP.Net2005和Oracle9i做模糊查询时报ORA-01722错误解决方法

本文介绍了一个在Oracle数据库中使用gridview进行模糊查询时遇到的问题及解决办法。问题表现为使用“+”连接字符串导致ORA-01722错误,通过将“+”替换为“||”解决了该问题。
我在用gridview进行配置模糊查询语,生成的语句是:SELECT     DICT_NAME, CODE, NAME 
FROM         BASE_DICT 
WHERE     (CODE LIKE '%' + :code + ' %') 
测试查询输入变量值后报错:错误源:system.data.oracleclient 
                          ora-01722:无效数字 
code字段类型是字符串型的,请高手指点


解决方法:
将“+”改为“||”就会正常了,不在报ORA-01722的错误。在Oracle中不是使用“+”来连接字符串的,而是使用“||”。你的Sql语句换为“||”后就OK了,我在VS.Net2005中测试过了,改变后如下:
SELECT     DICT_NAME, CODE, NAME 
FROM         BASE_DICT 

WHERE     (CODE LIKE '%' || :code || '%')


本文转自刚刚博客园博客,原文链接:http://www.cnblogs.com/lijigang/archive/2008/05/15/1198245.html,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值