SqlBulkCopyæ¯ä¸ªä¸éçéæ©ï¼ç´æ¥ç±DataTableå¯ä»¥å¯¼å
¥å°æ°æ®åºï¼ä½è¦æ³¨æ(1)ååä¸ç®æ 表ä¸è´(2)æ°æ®ç±»åä¸è´(3)空å¼å®¹éå¤çï¼åè代ç ï¼///<summary///å°<see cref="DataTable"/
çæ°æ®æ¹éæå
¥å°æ°æ®åºä¸ã///</summary///<param name="dataTable"
è¦æ¹éæå
¥ç
<see cref="DataTable"/ã
</param///<param name="batchSize"
æ¯æ¹æ¬¡åå
¥çæ°æ®éã
</parampublicboolInsertBatchDataTable(DataTable dataTable,
stringtableName,
intbatchSize =10000){using(SqlConnection connection =newSqlConnection(myConnectionString)){try{connection.Open();//ç»è¡¨åå ä¸åå导符using(varbulk =newSqlBulkCopy(connection, SqlBulkCopyOptions.KeepIdentity,
null){DestinationTableName=tableName,
BatchSize=batchSize}){//循ç¯ææåï¼ä¸ºbulkæ·»å æ å°//dataTable.EachColumn(c = bulk.ColumnMappings.Add(c.ColumnName, c.ColumnName), c = !c.AutoIncrement);foreach(DataColumn dcindataTable.Columns){bulk.ColumnMappings.Add(dc.ColumnName, dc.ColumnName);}bulk.WriteToServer(dataTable);
bulk.Close();}returntrue;}catch(Exception exp){returnfalse;}finally{connection.Close();}}}
å¦ææ¯æ°æ®éé常大ï¼è¶
è¿10W以ä¸çæ°æ®ï¼å¯ä»¥èèçæ.dtsxæ件ï¼ç¶åç±C#代ç ç´æ¥è°ç¨ï¼æçè¿æ¯ä¸éçã
温馨提示:答案为网友推荐,仅供参考