批量插入数据
- 更多笔记
- 1:重置表流水号
- 2:sql数据库备份表
- 3:SqlServer清除缓存
- 4:SQL2008 常量、变量、列或函数等与运算符的任意组合
- 5:sql更新列的数据
万条数据批量插入到sqlserver数据库
/// <summary>
/// 批量添加
/// </summary>
/// <param name="dt"></param>
/// <param name="tableName"></param>
/// <returns></returns>
public bool Add(DataTable dt, string tableName)
{
bool flag = false;
CheckTable(tableName);//查看表是否存在,如不存在,创建新表
string connectionString = PubConstant.ConnectionString;
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connectionString, SqlBulkCopyOptions.UseInternalTransaction))
{
try
{
bulkCopy.DestinationTableName = "[" + tableName + "]";
bulkCopy.ColumnMappings.Add("Bid", "Bid");
bulkCopy.ColumnMappings.Add("CaseSort", "CaseSort");
bulkCopy.ColumnMappings.Add("Title", "Title");
bulkCopy.ColumnMappings.Add("Contents", "Contents");
bulkCopy.ColumnMappings.Add("CreateDate", "CreateDate");
bulkCopy.BulkCopyTimeout = 3000;
bulkCopy.WriteToServer(dt);
flag = true;
}
catch (Exception ex)
{
throw;
}
finally
{
bulkCopy.Close();
}
}
return flag;
}