您好,登錄后才能下訂單哦!
本篇文章為大家展示了sql無效字符執行sql語句報錯的解決方法,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
說起來慚愧,總是犯一些小錯誤,糾結半天,這不應為一個分號的玩意折騰了好半天! 錯誤時在執行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無效字符執行sql語句報錯的解決方法,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。