1.问题1 执行下列SQL: sql = "select count(1) as totle from vhl_model_data a where a.OBTAIN_CREATE_TIME between to_date(?,'yyyymmsshh24mi') and to_date(?,'yyyymmsshh24mi');"; Oracle报“无效数字异常”:经过两个钟头的反复的检查,发现是由于自己粗心在上述语句结尾多写了个分号“;”导致.粗心害死人啊!真是囧! 2.问题2 ORA
今天在对12万条记录的表进行左联接时,有时可以查询出数据,有时会报无效数字,反复检查,发现问题. 例如sql: SELECT * FROM USER U LEFT JOIN USER_ROLE UR ON U.ID=UR.ID 当USER表ID与USER_ROLE表ID类型不一致的话,oracle内部隐式转换有时可以查询出数据, 但有时也会报 ORA-01722:无效数字
ORA-01722 无效数字 以下几种情况,数据库会报“ORA-01722 无效数字”错误: ① 对于两个类型不一致,一个“数字类型”,一个“非数字类型”进行赋值,或者比较操作: ② to_number()函数,括号中的输入的内容为非数字类型,比如‘a’.‘-1-1’. 针对这个函数,可以判断一个输入值是否是数字 .如果是数字,返回1,如果不是,返回0.判断数据输入的合法性时使用. create or replace function "isnumeric"(p_str in varc
给emp表中员工起中文名 select e.ename from emp e; select e.ename, case e.ename when 'SMITH' then '曹贼' when 'ALLEN' then '大耳贼' when 'WARD' then '诸葛小儿' else '无名' end from emp e; --条件表达式的通用写法,mysql和oracle都可用 接下来省略else select e.ename, case e.ename when 'SMITH' the
commands : show sys connect sys as sysdba or connect system as sysdba logout or disc clear screen or cle screen (utlsample.sql —> unlock scott tables.sql —> all tables data.sql —> add data into tables) connect scott/tiger start C:\utlsample.sq