java.sql.SQLException:ORA-00928:缺少SELECT關(guān)鍵字。使用JDBC將記錄插入數(shù)據(jù)庫時
我可以發(fā)現(xiàn)兩個問題:
不需要在列名周圍使用單引號。但是您可以將其用雙引號引起來。如果對列名或表名使用保留關(guān)鍵字,則很有必要。在這里DATE。您需要一個空格VALUES。因此,您需要更改insertStmt為以下內(nèi)容:
String insertStmt = 'INSERT into ' + 'MY_TABLE(RECORD_TYPE, FILE_TYPE, 'DATE', BATCH_NO, RECORD_COUNT) ' + 'VALUES(?, ?, ?, ?, ?);';解決方法
當(dāng)我嘗試向數(shù)據(jù)庫中插入一些行時出現(xiàn)錯誤。所以這是代碼
try { String insertStmt = 'INSERT into ' +'MY_TABLE(’RECORD_TYPE’,’FILE_TYPE’,’DATE’,’BATCH_NO’,’RECORD_COUNT’)' +'VALUES(?,?,?);'; PreparedStatement pstmt = super.con.prepareStatement(insertStmt); pstmt.setString(1,input[0]); pstmt.setString(2,input[1]); pstmt.setString(3,input[2]); pstmt.setString(4,input[3]); pstmt.setString(5,input[4]); System.out.println('Insert rows : ' + pstmt.executeUpdate());} catch (SQLException sqle) { System.out.println(sqle.getMessage()); sqle.printStackTrace();} catch (Exception e) { System.out.println(e.getMessage()); e.printStackTrace();} finally { con.close();}
并且數(shù)據(jù)庫上的所有內(nèi)容均為varchar類型,請仔細檢查各列(它們都是相同的名稱),將列名中的引號引起來(相同的結(jié)果)不會成功。要添加它,錯誤消息不是很有幫助。
任何建議,將不勝感激。
相關(guān)文章:
1. 怎么在網(wǎng)頁中設(shè)置圖片進行左右滑動2. node.js - mysql如何通過knex查詢今天和七天內(nèi)的匯總數(shù)據(jù)3. mysql 插入數(shù)值到特定的列一直失敗4. mysql 怎么做到update只更新一行數(shù)據(jù)?5. python - 在使用Pycharm時經(jīng)常看到如下的樣式,小括號里紅色的部分是什么意思呢?6. javascript - 新浪微博網(wǎng)頁版的字數(shù)限制是怎么做的7. python2.7 - python 函數(shù)或者類 代碼的執(zhí)行順序8. 360瀏覽器與IE瀏覽器有何區(qū)別???9. javascript - 用jsonp抓取qq音樂總是說回調(diào)函數(shù)沒有定義10. sublime可以用其他編譯器替換嗎?
