3

我正在使用 PreparedStatement 来查询我的表。不幸的是,我无法这样做。

我的代码很简单:

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. 但我可以向你保证,这张桌子确实存在。

更新

射击。我编辑了错误的sql。现在它成功了。谢谢你的时间。

4

2 回答 2

2

如果您尝试从显示的 sql 绑定值并从 SQL 提示符或任何 SQL 编辑器执行它,您是否会收到此错误?确保您的查询在其末尾或查询中的任何位置没有分号 (";")。

于 2011-03-03T06:42:57.307 回答
0

试着这样给它..

String query="Select favoritefood from favoritefoods where catname = ?";
preStat = conn.preparedStatement(query);  // conn is the connection object
preStat.setString(1,"Cappuccino");
ResultSet resultSet=preStat.executeQuery();
于 2011-03-03T06:54:48.773 回答