日期:2014-05-16  浏览次数:20711 次

iBatis执行MySQL与Oracle批处理更新异同
iBatis版本 2.3.0.677 
iBatis执行批处理更新数据在MySQL5.0版本和Oracle9i版本上有点小差异.
MySQL返回批处理更新的数据条数.Oracle9i不返回更新条数,具体原因不详,估计跟驱动有关系吧。
  	public static int BatchSave(List list) {
		int len =0;
		try{
			try{
				sqlclient.startTransaction();
				sqlclient.startBatch();
				for(int i=0;i<list.size();i++)
				{
                                     sqlclient.insert("insertBatch",list.get(i));
				}
				len = sqlclient.executeBatch();
				sqlclient.commitTransaction();
			}finally{
				sqlclient.endTransaction();
			}
		}catch(SQLException sqlex){
			System.out.println("sqlex:-> "+sqlex.getMessage());
		}
		return len;
	}