注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

让一切都逝去吧

排骨炖泥菜/猪肝炒苹果/鱼籽狗肉汤/狗头薏米汤

 
 
 

日志

 
 

ORA-01722 invalid number  

2012-08-06 13:18:39|  分类: 数据库 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
      出现这种,肯定是转换成数字的时候出错了,不过有种情况比较难查出原因来。比如某个表的字段数据库是字符,而限制只能是数字。如某个单号很长:1234567890123456789,查询时使用了num <= ?这样的方式,则oracle在查询的时候会自动进行to_number(num) 然后再比较 num <= ?。在 num 字段数据都正确时不会出错,但如果出错了或者被误插入包含字段的内容:32423ad234234,这时就会出错了。
      而且查询的时候,有些工具支持 where num <= :i_num这运行时定义参数查询,而且在有错误数据的情况下还不会报错。而在你系统orm生成的sql执行时,却报错了,这就很郁闷了。因此出现invalid number问题时,注意检查下数据是否正确。
  评论这张
 
阅读(1109)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017