0

私は Access と Prepared Statement を使用しています。以下のコードは私の insertData メソッドです。

public static Bean insertData(String name, int age, String date, boolean hero, boolean villian) {
....
sql = "insert into hv(name, age, firstApperance, hero, villian) values (?,?,?,?,?)";
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1, name);
ps.setInt(2, age);
ps.setString(3, date);
ps.setBoolean(4, hero);
ps.setBoolean(5, villian);          
ps.executeUpdate (sql);         
......

最初の数行のエラー行は次のとおりです。

Driver does not support this function
at sun.jdbc.odbc.JdbcOdbcPreparedStatement.executeUpdate(Unknown Source)
at org.enterprise.Bean.insertData(Bean.java:59)
at org.enterprise.InsertData.doPost(InsertData.java:49)

変数名、年齢、日付、ヒーロー、悪役のデータであるかどうかを確認したため、問題が何であるかについて混乱しています。そして、それらは私のサーブレットで要求され、この Bean に転送されました。

String name = request.getParameter("nameIn");
String ageInState = request.getParameter("ageIn");
....

以下を使用して Bean クラスに送信されます。

bean = Bean.insertData(name, age, date, hero, villian);
4

1 に答える 1

1

先頭の準備済みステートメントに SQL を既に入れているのに、なぜ ps.executeUpdate(sql) を呼び出すのですか?

ps.executeUpdate() はおそらく機能します。

http://docs.oracle.com/javase/tutorial/jdbc/basics/prepared.htmlを参照してください。

于 2012-04-27T16:33:43.470 に答える