数据库报“ORA-01722: 无效数字”错误的解决办法
2020-09-30
报错信息:ORA-01722: 无效数字问题SQL:?1234567891011SELECT A.*,B.FUND_CODE AS FUND_CODE,B.FUND_FULLNAME AS Fund_FullnameFROM BSP_SYS_ATTACH A,BSP_FUND_BASE BWHERE A.ENTITY_ID=B.FUND_ID/*此处A.ENTITY_ID的类型为VARCHAR;B.FUND_ID的类型为NUMBER;两者类型不匹配所以报错。*/更改后正确SQL:?123456789SELECT A.*,B.FUND_CODE AS FUND_CODE,B.FUND_FULLNAME AS Fund_FullnameFROM BSP_SYS_ATTACH A,BSP_FUND_BASE BWHERE A.ENTITY_ID=TO_CHAR(B.FUND_ID)/*类型转换函数to_char()*/拓展:将日期型转换为字符串TO_CHAR()?123SELECTTO_CHAR (SYSDATE, "YYYY-MM-DD HH24:MI:SS AM")FROM DUAL将数字型转换为字符串TO_CHAR()?123SELECTTO_CHAR(123.45678,"$99999.999")FROM DUAL;将字符换转换为日期TO_DATE()?123SELECTTO_DATE ("20100913", "YYYY-MM-DD")FROM DUAL;将字符串转换为数字TO_NUMBER()?123SELECTTO_NUMBER("01")FROM DUAL;
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。
http://image95.pinlue.com/image/60.jpg