数据批量导入sqlserver

/// <summary>
/// 数据批量导入sqlserver
/// </summary>
/// <param name="dt">要插入的数据源</param>
/// <param name="tableName">要插入的数据库表名</param>
/// <returns></returns>
private bool SqlBulkCopy(DataTable dt, string tableName)
{
try
{
//数据批量导入sqlserver,创建实例 SqlBulkCopyOptions.UseInternalTransaction采用事务 复制失败自动回滚
System.Data.SqlClient.SqlBulkCopy sqlbulk = new System.Data.SqlClient.SqlBulkCopy(strConn, SqlBulkCopyOptions.UseInternalTransaction);
sqlbulk.BatchSize = 2000;
sqlbulk.BulkCopyTimeout = 50;
//目标数据库表名
sqlbulk.DestinationTableName = tableName;
sqlbulk.WriteToServer(dt);
sqlbulk.Close();
return true;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
dt.Dispose();
}
}

posted @ 2016-06-16 16:25  bin89  阅读(103)  评论(0)    收藏  举报