今天由於專案需要進行了資料庫大批量資料操作的實驗:
由服務程式生成
10萬條記錄,竟將其插入到
sqlserver
資料庫中
第一次:剛開始用三層架構的
model
模式,即建立實體物件並給物件賦值,並且每次都關閉
conn,
程式迴圈執行
10萬次共用了
80多分鐘。
第二次:
conn
只開啟一次,執行
10萬次共用了
30分鐘。
第三次:直接用字串連線
sql語句進行執行,拋棄
model
用了,執行
10萬次共用了
5分鐘。
第四次:用
操作sql
語句,又節省了
20多秒。
第五次:
將所有語句(
10萬個)都用
stringbuilder
進行連線,結果
sqlserver
快取溢位,出現異常。
第六次:將所有生成的資料都插入到
datatable
中然後用
adapter.update
到資料庫中,使用時間未發生變化。
第七次:將所有生成的資料都插入到
datatable
中(用時
2.1秒),然後用
sqlbulkcopy
的writertoserver
方法(4.8秒)
,10萬條資料居然
6.9秒。
sqlbulkcopy
太牛叉了
Android資料庫大批量資料插入優化
對比在android中批量插入資料的3中方式對比 各插入1w條資料所花費的時間 1 乙個乙個插入 1 public static boolean insert sqliteopenhelper openhelper,4 returntrue 5 6 sqlitedatabase db null 7 ...
Oracle資料庫更新大批量資料案例
更新大批量資料的背景 使用者需要將vip的微信標識,傳給使用者的erp會員檔案中,已知存量資料約50w行資料,線下的微信標識資料我們開發提供了openid和erpid的csv檔案,erpid和線下的會員檔案id對應,需要將openid也更新到會員檔案裡。更新數量大致分為兩大步驟 一 將我們要更新的資...
mysql大批量更新資料
大批量的更新資料如果再使用傳統的 update 方法一條一條的更新,效率是很慢的,而且效能差,也很容易造成阻塞。1 使用mysql 自有的語句構建批量更新 update tble set price case id when 16 then 7.6 when 19 then 8.86 when 20...