c 高效的excel匯入sqlserver

2021-06-13 11:43:57 字數 1538 閱讀 8304

using system;

using system.configuration;

using system.data;

using system.data.oledb;

using system.data.sqlclient;

using system.io;

using system.web;

using system.web.security;

using system.web.ui;

using system.web.ui.htmlcontrols;

using system.web.ui.webcontrols;

using system.web.ui.webcontrols.webparts;

public partial class _default : system.web.ui.page

protected void button1_click(object sender, eventargs e)

string allowedextensions = ;

for (int i = 0; i < allowedextensions.length; i++)

}if (fileok)

else

}catch(exception ex)

string strconn;

if(fileextension==".xls")

else

//備註:"hdr=yes;"是說excel檔案的第一行是列名而不是資料,"hdr=no;"正好與前面的相反。

// "imex=1 "如果列中的資料型別不一致,使用"imex=1"可必免資料型別衝突。

oledbconnection conn = new oledbconnection(strconn);

oledbdataadapter oada = new oledbdataadapter("select * from [sheet1$]", strconn);

dataset ds = new dataset();

oada.fill(ds);

string connectionstring = "data source=(local);initial catalog=tourex;user id=sa;password=123";

sqlconnection sc = new sqlconnection(connectionstring);

sc.open();

//宣告 sqlbulkcopy物件

//沒有這個物件,批量匯入就沒戲

sqlbulkcopy sbc = new sqlbulkcopy(sc);

sbc.destinationtablename = "test";

// 列對映

for (int q = 0; q < ds.tables[0].columns.count; q++)

trycatch (exception ex)

finally

}}

c 中高效的excel匯入sqlserver的方法

將oledb讀取的excel資料快速插入的sqlserver中,很多人通過迴圈來拼接sql,這樣做不但容易出錯而且效率低下,最好的辦法是使用 bcp,也就是system.data.sqlclient.sqlbulkcopy 類來實現。不但速度快,而且 簡單,下面測試 匯入乙個6萬多條資料的sheet...

c 中高效的excel匯入sqlserver的方法

將oledb讀取的excel資料快速插入的sqlserver中,很多人通過迴圈來拼接sql,這樣做不但容易出錯而且效率低下,最好的辦法是使用bcp,也就是system.data.sqlclient.sqlbulkcopy 類來實現。不但速度快,而且 簡單,下面測試 匯入乙個6萬多條資料的sheet,...

c 中高效的excel匯入sqlserver的方法

將oledb讀取的excel資料快速插入的sqlserver中,很多人通過迴圈來拼接sql,這樣做不但容易出錯而且效率低下,最好的辦法是使用bcp,也就是system.data.sqlclient.sqlbulkcopy 類來實現。不但速度快,而且 簡單,下面測試 匯入乙個6萬多條資料的sheet,...