利用SqlBulkCopy一次性把Table数据插入到数据库
2011-03-31 14:26
513 查看
/// <summary> /// 建立缓存表 /// </summary> /// <returns></returns> #region 建立缓存表 public static DataTable GetDataTable() { DataTable dt = new DataTable(); dt.Columns.AddRange(new DataColumn[]{ new DataColumn("usrName",typeof(string)) }); return dt; } #endregion /// <summary> /// 将文本文件的数据缓存到表中 /// </summary> /// <param name="filename">文件名</param> /// <returns></returns> #region 缓存文本文件的数据 public DataTable inertDataToDt(string filename) { System.IO.StreamReader objReader = new StreamReader(fileName, Encoding.GetEncoding("GB2312")); string sLine = ""; string usrName= ""; DataTable dt = GetDataTable(); while (sLine != null) { sLine = objReader.ReadLine(); if (sLine != null) { sLine = sLine.Replace("/t", ","); string[] sArray = sLine.Split(','); if (sArray.Length == 9) { usrName = sArray[0]; DataRow r = dt.NewRow(); r[0] = usrName; dt.Rows.Add(r); } } } objReader.Close(); return dt; } #endregion ///<summary> ///利用SqlBulkCopy一次性把Table数据插入到数据库 ///</summary> ///<param name="dt"></param> /// <returns></returns> #region 批量插入数据 public static void BulkToDB(DataTable dt) { SqlConnection sqlConn = new SqlConnection( ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString); SqlBulkCopy bulkCopy = new SqlBulkCopy(sqlConn); bulkCopy.DestinationTableName = "tableName"; //要插入表的表名 bulkCopy.BatchSize = dt.Rows.Count; try { sqlConn.Open(); if (dt != null && dt.Rows.Count != 0) { bulkCopy.WriteToServer(dt); } } catch (Exception ex) { throw ex; } finally { sqlConn.Close(); if (bulkCopy != null) { bulkCopy.Close(); } } } #endregion
相关文章推荐
- 利用SqlBulkCopy插入数据
- C# SqlBulkCopy实现大数据插入数据库
- 利用SqlBulkCopy插入数据
- SqlBulkCopy实现大容量数据快速插入数据库中
- 使用SqlBulkCopy, 插入整个DataTable中的所有数据到指定数据库中
- 使用SqlBulkCopy将DataTable中的数据批量插入数据库中
- 将dataTable一次性插入数据库的几种方法(SqlBulkCopy或存储过程)
- 使用SqlBulkCopy将DataTable中的数据批量插入数据库中
- SqlBulkCopy 快速插入数据到SqlServer 数据库
- 使用SqlBulkCopy将DataTable中的数据批量插入数据库中
- SqlBulkCopy 数据库批量插入数据
- C# 数据批量插入到数据库SqlBulkCopy(源数据类型:List<T> Or DataTable)
- c# 数据库批量插入数据SqlBulkCopy 示例
- 采用SqlBulkCopy向数据库批量插入数据(大数据效果显著)
- sql server 利用(SqlBulkCopy) 批量插入数据
- 将txt文件中的数据批量插入到数据库中SqlBulkCopy
- 大数据批量插入数据库使用(SqlBulkCopy )效率更高
- .net利用SQLBulkCopy进行数据库之间的大批量数据传递
- c#向数据库插入较大数据(SqlBulkCopy)
- .net利用SQLBulkCopy进行数据库之间的大批量数据传递