2

こんにちは、JDBC を使用して sybase db を更新しようとしていますaddBatch executeBatch。実行時にテーブルを作成し、jdbc バッチに値を挿入しています。次の形式でコンマ区切りファイルから値を読み取っています

1,ABC,DEF
2,GHI,KJL

create query is CREATE TABLE School(schoolid int,schoolname varchar ,schooltype varchar )
insert query INSERT INTO School(schoolid,schoolname,schooltype) VALUES (?,?,?)

何が起こっているのかというと、エラーコードが正常に実行されていませんが、エンドデータベースに値がありません。テーブルが空です。私も使用してdbConn.commit()いますが、まだ空のテーブルです。ガイドしてください。前もって感謝します。

4

1 に答える 1

2

ほとんどの場合、バッチはよりも小さいため、 true と評価されることはないため、batchSizeの行に到達することはありません。pstmt.executeBatch();++count % batchSize == 0

ループpstmt.executeBatch();を閉じた直後に行を追加することで、簡単に修正できます。whileそうすれば、バッチが実行されず、新しいバッチが作成されなかった残りの行が最後に実行されます。

于 2013-07-09T12:10:42.433 に答える