一个java web项目 1.OS:Linux 2.Tomcat从1.5升级到1.7 3.Java从1.5升级到1.7 4.Oracle从10g升级到11g
在 oracle 中有一个名为 TBL 的表和一个名为 COL 的列,由 NUMBER(38,15) 定义。
升级前,将数字(例如:0.123456789012345)放入列或通过“SELECT TO_CHAR(COL) FROM TBL”检索是没有问题的。
但是现在,当我使用“SELECT TO_CHAR(COL) FROM TBL”或“SELECT TO_NUMBER(COL) FROM TBL”时,会出现错误(“Oracle-ORA-01722 无效号码”)。
我通过Oracle SQL Developer通过“SELECT COL FROM TBL”确认了这个值,它看起来很普通,只是一个像0.123456789012345这样的数字。但是如果我用SQL Plus确认这个值,它是空白的!这很奇怪!
此外,当我使用该值加一时,没有遇到错误但结果不正确(0.123456789012345 + 1 = 1.123456789012305)。
并非该列中的每个值都有相同的问题,但是当我通过没有 TO_CHAR() 或 TO_NUMBER() 的 Oracle SQL Developer 选择它时,所有值看起来都像一个正常数字。
任何有类似经验的人都会有很大帮助。谢谢。