zoukankan      html  css  js  c++  java
  • ORA-01722:无效数字

     今天写查询语句,关联多张表,出现了这个错误。

    结果发现时字段的数据类型不一致。

    select * from table_a a,table_b b 
    where to_char(a.project_id)=b.project_id(+) --把project_id的类型转换成字符串类型,使其保持一致。

    1.关联时转换一下数据类型;

    2.或者修改表中的字段。

    附录:

    1、TO_CHAR() 本函数又可以分三小类,分别是 
     ①转换字符->字符TO_CHAR(c):将nchar,nvarchar2,clob,nclob类型转换为char类型; 
    select TO_CHAR('AABBCC') from DUAL;
     ②转换时间->字符TO_CHAR(d[,fmt]):将指定的时间(data,timestamp,timestamp with time zone)按照指定格式转换为varchar2类型; 
    select TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') from DUAL;
     ③转换数值->字符TO_CHAR(n[,fmt]):将指定数值n按照指定格式fmt转换为varchar2类型并返回; 
    select TO_CHAR(-100, 'L99G999D99MI') from DUAL;
    select to_char(123456) from DUAL; 
    2、TO_NUMBER(c[,fmt[,nls]]) 将char,nchar,varchar2,nvarchar2型字串按照fmt中指定格式转换为数值类型并返回。 
    select TO_NUMBER('-100.00', '9G999D99') from DUAL;
    select to_number('123456') from DUAL;

     ok。

  • 相关阅读:
    Android studio中Terminal中使用git(Windows环境)
    快速将JSON转换为bean
    生成apk文件
    Intent显式和隐式使用
    碎片
    ListView的基本用法
    浅谈JSONObject,GSON解析JSON
    浅谈SAX,PULL解析XML
    iOS源代码管理工具
    详解tintColor属性
  • 原文地址:https://www.cnblogs.com/worf/p/5917393.html
Copyright © 2011-2022 走看看