SqlBulkCopy 类 大数据批量插入

MSND:http://msdn.microsoft.com/zh-cn/library/system.data.sqlclient.sqlbulkcopy(v=VS.80).aspx

 

 static void InsDate(DataRow [] drs)
       {
          
          // var sw = Stopwatch.StartNew();
           string strConn = "Data Source=.;Initial Catalog=CaiPiaoDB;Integrated Security=True";
           //// Creates a database connection.
           using (var conn = new SqlConnection(strConn))
           {
               conn.Open();
               using (var bulkCopy = new SqlBulkCopy(conn))
               {
                   //// Maping the data columns.
                   bulkCopy.ColumnMappings.Add("Num1", "Num1");
                   bulkCopy.ColumnMappings.Add("Num2", "Num2");
                   bulkCopy.ColumnMappings.Add("Num3", "Num3");
                   bulkCopy.ColumnMappings.Add("Num4", "Num4");
                   bulkCopy.ColumnMappings.Add("Num5", "Num5");
                   bulkCopy.ColumnMappings.Add("Num6", "Num6");
                   bulkCopy.ColumnMappings.Add("Num7", "Num7");

                   bulkCopy.DestinationTableName = "DataList";
                   //// Insert data into datatable.
                   bulkCopy.WriteToServer(drs);
               }
               //sw.Stop();
              // Console.WriteLine(sw.Elapsed);
           }
       }

      static DataRow GetDataRow(int num1, int num2, int num3, int num4, int num5, int num6, int num7)
       {
           //// Creates a custom table.
           var dt = new DataTable("DataList");
           dt.Columns.Add(new DataColumn("Num1", typeof(System.Int32)));
           dt.Columns.Add(new DataColumn("Num2", typeof(System.Int32)));
           dt.Columns.Add(new DataColumn("Num3", typeof(System.Int32)));
           dt.Columns.Add(new DataColumn("Num4", typeof(System.Int32)));
           dt.Columns.Add(new DataColumn("Num5", typeof(System.Int32)));
           dt.Columns.Add(new DataColumn("Num6", typeof(System.Int32)));
           dt.Columns.Add(new DataColumn("Num7", typeof(System.Int32)));

           //// Initializes data row.
           var dr = dt.NewRow();
           dr["Num1"] = num1;
           dr["Num2"] = num2;
           dr["Num3"] = num3;
           dr["Num4"] = num4;
           dr["Num5"] = num5;
           dr["Num6"] = num6;
           dr["Num7"] = num7;

           return dr;
       }

 

posted @ 2012-09-02 19:25  rdst  阅读(329)  评论(0编辑  收藏  举报