mysql在插入大量資料(十萬級或者百萬級別)時效率會變得很差,所以需要採用以下方法來提高其插入效率。
a) 關閉自動提交,改為手動提交
connect.setautocommit(false);
插入資料完後最後再con.commit();
b) 拆分資料,多執行緒入庫
c) 一條插入語句插入多條資料
insert into tablename (colume1,colume2, colume3)
values(1,2,3,), (4,5,6,), (7,8,9) ........
d) 使用批處理
可以加上批處理技術,但是使用了一條語句插入多條資料後,批處理的作用就不大了
可能碰到的問題
1. 因為一條sql語句可能會很大,但是mysql資料庫會對單次插入的資料大小有限制,所以應該更改資料庫中的max_allowed_packet值,將此值調大即可,當該值過小時會丟擲乙個異常,根據異常的堆疊資訊便可定位到解決方案
Oracle 批量插入多條資料
mysql中可以這樣 insert into test table id,name,age values 1 abc 23 2 kkk 33 以上語句不能在oracle資料庫執行。oracle中可以這樣 insert allinto test table id,name,age values 1 a...
Oracle sql批量插入多條資料
在oracle裡面,不支援像mysql那樣直接在後面拼多個記錄。oracle中有兩個方法達到批量插入的效果 insert into pager pag id,pag parent,pag name,pag active select 8000,0,multi 8000 1 from dual uni...
SqlServer 插入多條資料
插入一條資料使用default關鍵字 insert into student studentno,loginpwd,studentname,gradeid,phone,address,borndate,email values 001 12345 張三 男 1,1234567890123 defau...