SqlBulkCopy類資料匯入 自己測試例子

2021-05-24 14:15:55 字數 760 閱讀 2218

public static readonly string conndata = "data source=192.168.0.100;initial catalog=dbname;user id=sa;password=123456";

protected void page_load(object sender, eventargs e)

sqlbulkcopy(dt);}}

#region   批量插入資料到資料庫

datetime starttime;

private bool sqlbulkcopy(datatable dt)

{try

{starttime = datetime.now;

//資料批量匯入sqlserver,建立例項     sqlbulkcopyoptions.useinternaltransaction採用事務   複製失敗自動回滾

system.data.sqlclient.sqlbulkcopy sqlbulk = new system.data.sqlclient.sqlbulkcopy(conndata, sqlbulkcopyoptions.useinternaltransaction);

sqlbulk.sqlrowscopied +=

new sqlrowscopiedeventhandler(onrowscopied); //訂閱複製完成後的方法,引數是 sqlbulk.notifyafter的值

sqlbulk.notifyafter = dt.rows.count;

批量插入資料 SqlBulkCopy類

最近要優化資料庫訪問,資料庫是sqlserver。對單條資料的插入和更新,之前的做法是先查詢資料庫是否有記錄,有就更新,沒有就插入。查了網上的資料後,別人有個好的做法是直接update,若受影響條數是0就直接插入。不知道有沒有更好的。對與操作歷史表的請求,準備做成批量插入。通過使用sqlbulkco...

利用SqlBulkCopy插入資料

bulk方法主要思想是通過在客戶端把資料都快取在table中,然後利用sqlbulkcopy一次性把table中的資料插入到資料庫 如下 public static void bulktodb datatable dt catch exception ex finally public static...

SqlBulkCopy做大資料插入

在做大批量資料插入的時候,如果用insert into values 這種方式的話效率極低,這裡介紹兩種效能比較好的批量插入方法。1.使用sqlbulkcopy private static long sqlbulkcopyinsert sqlbulkcopy sqlbulkcopy new sql...