1最近在做乙個交叉表的資料批量匯入,採用過很多方式一直沒有特別理想的解決方案,昨天終於解決了,以下是測試記錄:23
openfiledialog openfile
=new
openfiledialog();
4openfile.filter ="
工作薄(*.xlsx)|*.xlsx|所有檔案(*.*)|*.*";
5if(openfile.filterindex ==1
&&openfile.showdialog()
==dialogresult.ok)617
18this
.backgroundworker1.runworkerasync();
1920
資料匯入:分為兩個步驟:第
一、先把資料從excel匯入到datagridview;第
二、啟動後台處理執行緒。
2122
2324
public
delegate
void
myinvoke(
string
str);
2526
delegate
void
starttqdata();
2728
public
void
settxt(
string
str)
2933
34////35
36getdatagridview()
3738
4344
////
4546
4748
myinvoke mi
=new
myinvoke(settxt);
49begininvoke(mi,
newobject
);
5051
this
.invoke(
newstarttqdata(getdatagridview));
5253
後台執行緒處理:
5455
一種方式:
5657
1、先把資料全部插入到乙個臨時表中,和你匯入的目標表相同的表結構
5859
2、然後利用load data outfile到乙個
*.txt文字檔案中
6061
3、利用load data infile
*.txt到目標資料表中
6263
另外一種方式:
6465
1、先把資料全部插入到乙個臨時表中,和你匯入的目標表相同的表結構
6667
2、將臨時表資料匯入到目標資料表中,當然要判斷是否有該記錄,如有更新,沒有插入,呵呵,沒有load data infile replace方便了。
6869
10w條資料在10s
-20s之間,應該還是在可承受範圍之內。當然更為合適的方式就是匯入資料的excel格式與你的目標**式相同,那就執行效率更高了,20w條資料只需要幾s就搞定了。
快速匯入Excel
using system using system.collections.generic using system.text using system.data.oledb using system.data.sqlclient using system.data using system.win...
python讀取excel並匯入mysql
如果excel檔案內的資料是這樣的 idname agebirthday 1kate 112008 2 2 2mike 221997 4 4 3tom 331986 5 5 首先,匯入python包xlrd,以及它的乙個方法 xldate as tuple。import xlrd from xlrd...
java批量匯入Excel
util包 public class excelhelp catch exception ex for int numsheet 0 numsheet workbook.getnumberofsheets numsheet 迴圈行row for int rownum 1 rownum sheet.g...