因專案需要匯入資料量較大的CSV到MYSQL資料庫,發現匯入很慢,因此對其進行了比較!
以10000條資料來作為樣本測試,第一次不分批全部匯入,DB查詢構造器報錯,提示佔位符超過65000個,超出MYSQL處理上限;原生SQL匯入正常:
成功匯入10000行
匯入用時7.0685548782349
記憶體使用:0.4242578125MB
然後分割成5000一批插入,DB查詢構造器插入正常:
成功匯入10000行
匯入用時37.71401309967
記憶體使用:0.33146875MB
原生SQL匯入:
成功匯入10000行
匯入用時32.702127933502
記憶體使用:0.4242578125MB
相差不大,因此,批量插入最好還是用原生SQL,不受佔位符限制。
不知大家有什麼更好的方法,批量插入大量資料到資料庫呢?
本作品採用《CC 協議》,轉載必須註明作者和本文連結