Ejemplo n.º 1
0
        /// <summary>
        /// 导入数据测试
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button2_Click(object sender, EventArgs e)
        {
            string    sql = "select * from em_script_node";
            DataTable dt  = new DataTable();

            dt.Columns.Add("ID", typeof(int));
            dt.Columns.Add("NAME", typeof(string));
            dt.Columns.Add("CREATETIME", typeof(DateTime));
            for (int i = 0; i < 10; i++)
            {
                DataRow dr = dt.NewRow();
                dr[0] = i;
                dr[1] = "name is: " + i;
                dr[2] = DateTime.Now.AddMinutes(i);

                dt.Rows.Add(dr);
            }
            string   tableName = "zz_0628";
            int      n         = 0;
            TimeSpan ts        = new TimeSpan();

            using (BDBHelper dbHelper = new BDBHelper())
            {
                //从另外一张表查询出结果再导入
                //dt = dbHelper.ExecuteDataTable(sql);
                try
                {
                    dbHelper.Drop(tableName);
                }
                catch
                {
                }
                if (dbHelper.TableIsExists(tableName))
                {
                    dbHelper.Drop(tableName, false);
                }
                dbHelper.CreateTableFromDataTable(tableName, dt);
                DateTime begin = DateTime.Now;
                n  = dbHelper.LoadDataInDataTable(tableName, dt);
                ts = DateTime.Now - begin;
            }
            MessageBox.Show(string.Format("共有【{0}】条记录导入表【{1}】,用时【{2}】毫秒。", n, tableName, ts.TotalMilliseconds));
        }
Ejemplo n.º 2
0
        private void button7_Click(object sender, EventArgs e)
        {
            string conn      = string.Empty;
            string file      = string.Empty;
            string tableName = "";
            int    i         = 0;

            //方法一,写文件再导
            using (BDBHelper dbHelper = new BDBHelper("DB2", conn))
            {
                i = dbHelper.LoadDataInLocalFile(tableName, file);
            }

            //方法二,转DataTable,再导入
            DataTable dt = new DataTable();

            using (BDBHelper dbHelper = new BDBHelper("DB2", conn))
            {
                //使用(适合数据量小,纯内存方式)
                i = dbHelper.LoadDataInDataTable(tableName, dt);
                //或者(适合数据量很大,超过10万的级别,内部会先写文件再导入)
                i = dbHelper.LoadDataInDataTableWithFile(tableName, dt);
            }
        }