用ASP.Net2005和Oracle9i做模糊查询时报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,如需转载请自行联系原作者

上一篇:微软面试题:正则表达式提取链接地址


下一篇:MongoDB数据库顺序读性能评估测试