1)想傳送多條sql,又要降低與資料庫系統的互動,這時使用批處理
2)statement物件:適合對不同結構的sql做批處理操作
3)preparedstatement物件:適合對相同結構的sql做批處理操作
優點:傳送的是預編譯後的sql語句,執行效率高。
缺點:只能應用在sql語句相同,但引數不同的批處理中。因此此種形式的批處理經常用於在同乙個表中批量插入數 據,或批量更新表的資料。
案例:
//statement和preparedstatment的批處理
public class demo3 catch (exception e) finally
} public static void preparedbatch()
}//執行批物件
pstmt.executebatch();
//清空批物件
pstmt.clearbatch();
long end = system.currenttimemillis();
system.out.println((end-begin)/1000+"秒");
} catch (exception e) finally
} public static void main(string args)
}
1)當需要獲取剛插入主鍵資訊的時候,需要使用獲取主鍵值方法
2)關鍵**:
pstmt = conn.preparestatement(sqla,statement.return_generated_keys);
rs = pstmt.getgeneratedkeys();
if(rs.next())
public class dao
//no3,向card表插入一條記錄
pstmt = conn.preparestatement(sqlb);
pstmt.setstring(1,p.getcard().getlocation());
pstmt.setint(2,pid);
pstmt.executeupdate();
//非空關閉流
jdbcutil.close(rs);
jdbcutil.close(pstmt);
jdbcutil.close(conn);
}}
ibatis獲取主鍵值
關鍵字 ibatis獲取主鍵值 想取的主鍵的值,需要加 selectkey這段,而且前面sql語句裡面不需要插入主鍵字段。對於不同的資料庫,selectkey語句的寫法是不同的。針對不同資料庫的寫法如下 cloudscape values identity val local db2 values ...
批處理 DOS 獲取登錄檔鍵值
參考了 echo off setlocal enabledelayedexpansion for f skip 2 delims tokens 1,i in reg query hkey local machine software microsoft internet explorer main ...
JDBC獲取插入記錄的主鍵值
實現方案 實現 jdbc 返回插入記錄的主鍵值 實現要求 前提是表的主鍵必須是自增長的 param clazz param sql insert into userinfos username,password,date,address values param args return public...