zoukankan      html  css  js  c++  java
  • C# SQL 整表插入

    说明:

    (1)表A的一部分数据插入到表B

    (2)DataAccess 类,是放在DAL层下的底层类;

     da.StrConnection 写在DataAccess类中;


      //整表插入方法

     private void InsertTable() {

                DataAccess da = new DataAccess();            
                string sql=" select 0,字段1,字段2,字段3.. from 表A where  MainTop_ID in (" + mainID + ")";

                DataTable dt = new DataTable();

                dt = DataAccess.GetDataSet(sql, false, null).Tables[0];   //把查询结果放到表dt中

                using (SqlBulkCopy sqlBC = new SqlBulkCopy(da.StrConnection)) {

                    //一次批量的插入的数据量

                    sqlBC.BatchSize = 100000;
                    //超时之前操作完毕所同意的秒数,假设超时则事务不会提交 ,数据将回滚。全部已复制的行都会从目标表中移除
                    sqlBC.BulkCopyTimeout = 60;

                    //設定 NotifyAfter 属性,以便在每插入10000 条数据时。呼叫对应事件。  
                    sqlBC.NotifyAfter = 10000;
                    // sqlBC.SqlRowsCopied += new SqlRowsCopiedEventHandler();
                    //设置要批量写入的表
                    sqlBC.DestinationTableName = "表B";
                    //批量写入
                    sqlBC.WriteToServer(dt);
                }

            }


    private static string strConnection = "";        //变量记录连接字符串

     public string StrConnection
            {
                get { return strConnection; } //返回成员变量_name的值 
                set { strConnection = value; } //对属性设置值用valuekeyword表示。将value用_name保存下来! 
            }

    图示:


  • 相关阅读:
    run blackberry Sim&MDS4.7
    jsadd input name
    java memory
    silverlight Pivot Hearder
    eclipse tomcat server
    Monitor.Wait初探(5)
    Monitor.Wait初探(4)
    Monitor.Wait初探(2)
    解决远程注册表打不开,Cannot open HKEY_LOCAL_MACHIN…
    Windows界面自动化技术发展概要(二)
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/6792816.html
Copyright © 2011-2022 走看看