0

jdbc を介してデータ ストリームから postgresql にデータをロードする方法 データ ストリームまたはメモリ内の配列を取得します。ストリーム データを postgresql にロードする方法はありますか? 挿入の使用は非効率的です。</p>

4

1 に答える 1

2

バッチ挿入で準備済みステートメントを使用する必要があります。http://viralpatel.net/blogs/batch-insert-in-java-jdbc/のページをご覧ください。このアプローチのパフォーマンスとセキュリティの両方の利点が説明されています。以下のコードはそのページからのものです。

String sql = "insert into employee (name, city, phone) values (?, ?, ?)";
Connection connection = new getConnection();
PreparedStatement ps = connection.prepareStatement(sql);

final int batchSize = 1000;
int count = 0;

for (Employee employee: employees) {

    ps.setString(1, employee.getName());
    ps.setString(2, employee.getCity());
    ps.setString(3, employee.getPhone());
    ps.addBatch();

    if(++count % batchSize == 0) {
        ps.executeBatch();
    }
}
ps.executeBatch(); // insert remaining records
ps.close();
connection.close();
于 2012-06-26T03:54:26.307 に答える