zoukankan      html  css  js  c++  java
  • Sqlserver高效率数据导入

     string strConn = "Data Source=192.18.11.200;Initial Catalog=dbXianNew;user=sa;pwd=test;";
                SqlConnection conn = new SqlConnection(strConn);
    
                //源连接
                conn.Open();
    
                //查询元数据
                string strSql = "select * from XiAnData where (LU_MING is not null or LU_MING<>'') and (FANG_JIAN_HAO is not null or FANG_JIAN_HAO<>'') " +
                    "and not ((JIAN_ZHU_MJ1 is null or JIAN_ZHU_MJ1='') and (JIAN_ZHU_MJ2 is null or JIAN_ZHU_MJ2='') and (SHI_YONG_MJ is null or SHI_YONG_MJ=''))";
    
    
                SqlCommand cmd = new SqlCommand(strSql, conn);
    
                SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
    
    
                DataTable table = new DataTable();
                table.Columns.Add("id", typeof(System.Guid));
                table.Columns.Add("di_zhi", typeof(String));
                table.Columns.Add("dan_yuan", typeof(String));
                table.Columns.Add("fang_jian_hao", typeof(String));
                table.Columns.Add("hu_xing", typeof(String));
                table.Columns.Add("mian_ji", typeof(String));
    
    
                while (dr.Read())
                {
                    DataRow row = table.NewRow();
    
                    row["id"] = dr["ID"].ToString();
    
                    Regex r; // 声明一个 Regex类的变量
                    r = new Regex("\\d"); // 定义表达式
    
                    if (dr["HAO"] != null && dr["HAO"].ToString() != "" && dr["ZUO"] != null && dr["ZUO"].ToString() != "")
                    {
                        row["di_zhi"] = dr["LU_MING"].ToString() + dr["HAO"].ToString() + "" + dr["ZUO"].ToString() + "";
                    }
                    else if (dr["HAO"] != null && dr["HAO"].ToString() != "")
                    {
                        row["di_zhi"] = dr["LU_MING"].ToString() + dr["HAO"].ToString() + "";
                    }
                    else if (r.Match(dr["LU_MING"].ToString()).Success)
                    {
                        row["di_zhi"] = dr["LU_MING"].ToString();
                    }
    
                    if (dr["DAN_YUAN1"] != null && dr["DAN_YUAN1"].ToString() != "")
                    {
                        row["dan_yuan"] = dr["DAN_YUAN1"].ToString();
                    }
                    else if (dr["FANG_JIAN_HAO"] != null && dr["FANG_JIAN_HAO"].ToString() != "" && dr["FANG_JIAN_HAO"].ToString().Length > 4)
                    {
                        row["dan_yuan"] = dr["FANG_JIAN_HAO"].ToString().Substring(0, dr["FANG_JIAN_HAO"].ToString().Length - 4);
                    }
    
                    row["fang_jian_hao"] = dr["FANG_JIAN_HAO"].ToString();
                    row["hu_xing"] = dr["HU_XING"].ToString();
    
                    if (dr["SHI_YONG_MJ"] != null && dr["SHI_YONG_MJ"].ToString() != "" && dr["SHI_YONG_MJ"].ToString() != "0")
                    {
                        row["mian_ji"] = dr["SHI_YONG_MJ"].ToString();
                    }
                    else if (dr["JIAN_ZHU_MJ1"] != null && dr["JIAN_ZHU_MJ1"].ToString() != "" && dr["JIAN_ZHU_MJ1"].ToString() != "0")
                    {
                        row["mian_ji"] = dr["JIAN_ZHU_MJ1"].ToString();
                    }
                    else if (dr["JIAN_ZHU_MJ2"] != null && dr["JIAN_ZHU_MJ2"].ToString() != "" && dr["JIAN_ZHU_MJ2"].ToString() != "0")
                    {
                        row["mian_ji"] = dr["JIAN_ZHU_MJ2"].ToString();
                    }
    
                    if (!string.IsNullOrEmpty(row["di_zhi"].ToString()) && !string.IsNullOrEmpty(row["fang_jian_hao"].ToString()) && !string.IsNullOrEmpty(row["mian_ji"].ToString()))
                    {
                        table.Rows.Add(row);
                    }
                }
    
                dr.Close();
    
                conn.Open();
    
                using (SqlBulkCopy bc = new SqlBulkCopy(conn))
                {
                    bc.BatchSize = 50000;
                    bc.BulkCopyTimeout = 50000;
                    bc.DestinationTableName = "t_xian1";
                    bc.WriteToServer(table);
                }
    
                conn.Close();
  • 相关阅读:
    【WebService】WebService之WSDL文档深入分析(三)
    Android开发——发布第三方库到JitPack上
    Android破解学习之路(七)—— 乐秀视频编辑 内购破解 专业版 价值40元的破解
    Android破解心得——记学习七少月安卓大型安全公开课
    【转】Android播放音频MediaPlayer的几种方式介绍
    Android开发——EditText的属性使用
    Android开发——Fragment的简单使用总结
    Android开发——签名包的生成
    Android Stuido xml使用app属性没有提示代码
    Android开发——设置界面的创建
  • 原文地址:https://www.cnblogs.com/Kakasi/p/2961401.html
Copyright © 2011-2022 走看看