说起来惭愧,总是犯一些小错误,纠结半天,这不应为一个分号的玩意折腾了好半天!
错误时在执行SQL语句的时候发出的,信息如下:
Java代码
[default][2012-11-22 11:35:58,552][ERROR]
Java代码
[com.primeton.common.connection.impl.synchronization.TraceLoggerStatementSynchronization:49]
Java代码
Sql[INSERT INTO ASE_SYSTEM_LOG (LOGID,USERID,USERNAME,LOGINTIME) VALUES(?,?,?,?);] execute error.
java.sql.SQLException: ORA-00911: 无效字符
程序代码如下:
Java代码
复制代码 代码如下:
String sql="INSERT INTO ASE_SYSTEM_LOG (LOGID,USERID,USERNAME,LOGINTIME) VALUES(?,?,?,?);";
con = this.getDataSource().getConnection();
ptt=con.prepareStatement(sql);
ptt.setLong(1, logId);
ptt.setLong(2, userId);
ptt.setString(3,userName);
ptt.setString(4, loginDate);
ptt.executeUpdate();

当执行ptt.excuteUpdate()方法的时候,直接报以上的错。
以为是sql中参数赋值有问题,但是将sql语句直接copy到PLSQL中执行,却没问题,纠结了好久,原来是
复制代码 代码如下:
"INSERT INTO ASE_SYSTEM_LOG (LOGID,USERID,USERNAME,LOGINTIME) VALUES(?,?,?,?);"

中多了一个“;”号,坑哥啊,就这玩意,我顿时无语!!!
好啦,如果有报字符异常问题的盆友可以参考下,没有的就永远不要再发这样的低级错误啦!
告诫自己一句话:不细心是做不好程序的。

更多相关文章

  1. Android(安卓)报错:Caused by: android.os.FileUriExposedExcepti
  2. Ionic 运行报错No resource identifier found for attribute 'ap
  3. Android(安卓)-- Android(安卓)JUint 与 Sqlite
  4. android 当系统存在多个Launcher时,如何设置开机自动进入默认的La
  5. Android(安卓)SQLiteDatabase的使用
  6. Android(安卓)启动Tomcat服务报错,端口占用解决方案
  7. android 通话记录次数
  8. Android(安卓)项目混编flutter报错
  9. Android(安卓)SQLiteDatabase的使用

随机推荐

  1. Mybatis if, set, where 动态sql和sql片
  2. 99%的人都不知道的pandas骚操作(一)
  3. TensorFlow RNN Cell源码解析
  4. Requests库作者Kenneth Reitz的另一神作!
  5. TensorFlow Bi-LSTM实现文本分词
  6. JavaScript加密逻辑分析与Python模拟执行
  7. 关于互联网金融授信产品的风控建模
  8. 使用requests+正则表达式爬取猫眼电影排
  9. Learning to Rank概述
  10. 99%的人都不知道的pandas骚操作(二)