SQL Server sql无效字符 执行sql语句报错解决方案

2022-11-12 09:47:58
内容摘要
这篇文章主要为大家详细介绍了SQL Server sql无效字符 执行sql语句报错解决方案,具有一定的参考价值,可以用来参考一下。 对此感兴趣的朋友,看看idc笔记做的技术笔记!说起来惭
文章正文

这篇文章主要为大家详细介绍了SQL Server sql无效字符 执行sql语句报错解决方案,具有一定的参考价值,可以用来参考一下。

对此感兴趣的朋友,看看idc笔记做的技术笔记!

说起来惭愧,总是犯一些小错误,纠结半天,这不应为一个分号的玩意折腾了好半天!错误时在执行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(?,?,?,?);" 
中多了一个“;”号,坑哥啊,就这玩意,我顿时无语!!!好啦,如果有报字符异常问题的盆友可以参考下,没有的就永远不要再发这样的低级错误啦!告诫自己一句话:不细心是做不好程序的。

注:关于SQL Server sql无效字符 执行sql语句报错解决方案的内容就先介绍到这里,更多相关文章的可以留意

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!