我正在使用PreparedStatement查詢我的表。不幸的是,我一直無法這樣做。Java不會運行參數爲
我的代碼是如此簡單:
PreparedStatement preparedStatement = connection.prepareStatement(
"Select favoritefood from favoritefoods where catname = ?");
preparedStatement.setString(1, "Cappuccino");
ResultSet resultSet = preparedStatement.executeQuery();
拋出的錯誤是java.sql.SQLException: ORA-00911: invalid character
。就好像它永遠不會運行給定的參數。
謝謝你的時間。我花了一天的時間來調試,但仍然不成功。
正如Piyush提到的,如果我在語句結尾處省略分號,會引發新的錯誤。 java.sql.SQLException: ORA-00942: table or view does not exist
。但我可以向你保證這張桌子確實存在。
UPDATE
拍攝。我編輯了錯誤的sql。現在它成功了。 thx爲你的時間。
我可以直接對蟾蜍運行的聲明,並得到了結果。它似乎只是java不替代參數。它將完整地執行帶有問號的代碼。 – 2011-03-03 06:53:08
@Piyush我更新了我的代碼。在最後省略分號後,拋出新的錯誤。 – 2011-03-03 07:09:15
你可以在這裏發佈相關的JDBC代碼嗎?您可能從JDBC連接到錯誤的數據庫 - 請檢查該數據庫。此外,嘗試schemaName.tableName像選擇。從favoritefoodsfavoritefood –
2011-03-03 07:17:51