0

1 つのパラメーターに値を指定していないというエラーが引き続き表示され、何が問題なのかわかりません。

ps("INSERT INTO slide (presentation_id, duration, position, type) values (?, ?, ?, ?)     ").set(this.getId()).set(slide.getDuration()).set(slide.getPosition()).set(slide.getType().ordinal()).update();

表では、自動インクリメントが設定されている 1 つの列にのみ値を指定していません。

私にはすべて問題ないようですが、何が間違っているのかアドバイスをお願いします。

4

2 に答える 2

1

列リストに auto inc フィールドを含めないでください。

ps("INSERT INTO slide (duration, position, type) values (?, ?, ?)     ").set(slide.getDuration()).set(slide.getPosition()).set(slide.getType().ordinal()).update();
于 2013-02-06T22:09:22.003 に答える
0

この「トレーニングコード」の代わりに、もっとクリーンなことをしてみてください

これは例です:

String insertTableSQL = "INSERT INTO DBUSER"
        + "(USER_ID, USERNAME, CREATED_BY, CREATED_DATE) VALUES"
        + "(?,?,?,?)";
PreparedStatement preparedStatement = dbConnection.prepareStatement(insertTableSQL);
preparedStatement.setInt(1, 11);
preparedStatement.setString(2, "mkyong");
preparedStatement.setString(3, "system");
preparedStatement.setTimestamp(4, getCurrentTimeStamp());
// execute insert SQL stetement
preparedStatement .executeUpdate();

フォローするリンクは次のとおりです。 http://www.mkyong.com/jdbc/jdbc-preparestatement-example-insert-a-record/

于 2013-02-06T22:14:00.400 に答える