0

データベースに挿入する必要がある2つのArrayListがあります。データベースに1つのarraylist値を挿入するためのコードがあります...データベースに値を挿入するための最初のarraylistは次のとおりです

for (int j = 0; j < list.size(); j++) {
    int d = (int) list.get(j);
    stmt.executeUpdate("insert into cdrcost  (calldate) value ('" + d+ "'));
}

ここで、必要に応じて、ここで述べたのと同じクエリ内でデータベースに挿入する別の配列リストがあります。これらの両方の配列リストの値がデータベースに挿入されるように、任意のパスが必要です。 ..事前に感謝...

4

1 に答える 1

3
PreparedStatement psth = dbh.prepareStatement("insert into cdrcost  (calldate) value (?)");
for (List<Integer> lst: Arrays.<List<Integer>>asList(list1,list2))
  for (int value: lst) {
    psth.setInt(1,value);
    psth.addBatch();
  }
psth.executeBatch();

複数の値を設定する必要がある場合:

PreparedStatement psth = dbh.prepareStatement("insert into cdrcost  (calldate, othercolumn) value (?, ?)");
Iterator<Integer> it1 = list1.iterator();
Iterator<Integer> it2 = list2.iterator();
for (; it1.hasNext() && it2.hashNext();) {
  psth.setInt(1,it1.next());
  psth.setInt(2,it2.next());
  psth.addBatch();
}
psth.executeBatch();
于 2012-10-11T10:01:03.937 に答える