-2

この sql ステートメントのエラーを教えてください。このメソッドを使用して、クライアントからスケジュールを追加します。RMIテクノロジーを使用しています

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        String database = "jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ="+path+".accdb;";
        dbConn = DriverManager.getConnection(database, "", "");
        ps = dbConn.prepareStatement("INSERT into Schedule(Subject, Student, Instructor, Time, Days, Room) VALUES(?,?,?,?,?,?)");
        ps.setString(1, subject);
        ps.setString(2, student);
        ps.setString(3, instructor);
        ps.setString(4, time);
        ps.setString(5, days);
        ps.setString(6, room);
        ps.executeUpdate();

このメソッドを公開すると、常にエラーが発生します。これは次のとおりです。

java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement.
4

2 に答える 2

5

詳細なエラー メッセージがなければ、確かなことはわかりませんが、Timeis がSQL for Microsoft Access の予約語である可能性があります。

于 2013-03-20T16:40:36.567 に答える
0

そのためですTime is reserved keyword

開発者がテーブル属性として使用する一般的なTime または Fromを使用しないでください。エラーが発生する理由Syntax error in INSERT INTO statement

あなたの場合、テーブルの属性としての代わりに、Time他の名前を使用してください。

予約済みのキーワードであるこのドキュメントを参照してください。

于 2013-03-20T16:40:48.203 に答える