日期:2014-05-20  浏览次数:20869 次

使用addBatch()不执行
query_sql = sql_Map.get(key);
System.out.println(query_sql);
ResultSet rs = db.executeQuery(query_sql, connection_sql);
Long count = 0L;
pstmt = connection_orcl.prepareStatement(SOURCEOFSTUDENT_ORCL);
while (rs.next()) {
   count += 1;
   pstmt.setString(1, rs.getString("EMPID"));
   pstmt.setString(2, rs.getString("KQ_DATE"));
   pstmt.setString(3, rs.getString("KQ_TIME"));
   pstmt.addBatch();//这边执行不了
      }
pstmt.executeBatch();
System.out.println("成功");
System.out.println(key + "表共导入数据[" + count + "]条数据!");

------解决方案--------------------
 pstmt.addBatch();//这边执行不了
      }
pstmt.executeBatch();
要卸载循环内才行
------解决方案--------------------
写在循环内。
------解决方案--------------------
报什么错呢?
------解决方案--------------------
你是如何判断不执行的?还是程序有断点。
------解决方案--------------------
 pstmt.addBatch();//这边执行不了   (把所有对象集合保存到某地方)
改成
pstmt.execute()

pstmt.executeBatch();删掉     (一次性提交)

我也遇到过这样的情况 最好不要这样写 



------解决方案--------------------
数据库没值就没有执行吗?debug看看有没有跑到这个方法,看你也没有事务操作。