JDBC中sql都是分号“;”惹的祸

  工号问题,用jdbc执行“SELECT max(to_number(translate(trim(substr(c_code,instr(c_code,'9'))),'0123456789'||trim(substr(c_code,instr(c_code,'9'))),'0123456789') ,'9999999999999999999'))FROM tb_inf_employee;”的时候报错

  程序提示:"java.sql.SQLException: ORA-00911: 无效字符 \t"异常。查了半天sql语句肯定没问题。后来上网一搜,原来在sql结束时加了‘;’,jdbc访问数据库,要求执行的sql语句结尾不能有分号的,都是分号惹的祸啊。

  另外,上面的语句如果translate的结果为''则ResultSet的next()的getString方法返回的是null不是“”空字符串,在程序中要额外判断。

你可能感兴趣的:(jdbc)