zoukankan      html  css  js  c++  java
  • 将Excel表格导入DataTable的方法

    一、把DataTable插入数据库
    public static void DataTableToDB()
    {
          string _strExcelFileName = @"D:/example.xls";
          DataTable dtExcel = ExcelToDataTable(_strExcelFileName,"Sheet1");
          for (int i = 0; i < dtExcel.Rows.Count; i++)
          {
               InsertDataToAccess(dtExcel.Rows[i][0].ToString(), float.Parse(dtExcel.Rows[i][1].ToString()));
          }
    }

    二、把Excel数据读入DataTable
    public static DataTable ExcelToDataTable(string strExcelFileName, string strSheetName)
    {
          string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + strExcelFileName + ";" +"Extended Properties=Excel 5.0;";
          string strExcel = string.Format("select * from [{0}$]", strSheetName);
          DataSet ds = new DataSet();

          using (OleDbConnection conn = new OleDbConnection(strConn))
          {
               conn.Open();
               OleDbDataAdapter adapter = new OleDbDataAdapter(strExcel, strConn);
               adapter.Fill(ds, strSheetName);
               conn.Close();
          }

          return ds.Tables[strSheetName];
    }

    三、向Access数据库表插入数据
    public static void InsertDataToAccess(string _strPara,float _fPara)
    {
          OleDbConnection oleDbConn = new OleDbConnection();
          oleDbConn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:/ExcelData.mdb;User Id=admin;Password=;";
          oleDbConn.Open();

          string strInsertString = "INSERT INTO tb_excelData (strCollumn1,fCollumn2) VALUES (@strCollumn1,@fCollumn2)";
          OleDbCommand oComm = new OleDbCommand(strInsertString, oleDbConn);
          oComm.Parameters.Add("@strCollumn1", OleDbType.Char , 50);
          oComm.Parameters["@strCollumn1"].Value = _strPara;
          oComm.Parameters.Add("@fCollumn2", OleDbType.Double);
          oComm.Parameters["@fCollumn2"].Value = _fPara;
         
          ocomm.ExecuteNonQuery();
          oleDbConn.Close();
    }

  • 相关阅读:
    重拾数学--初中--有理数
    Python中的运算符
    PyQt5实现虚拟摇杆
    Python无重复字符的最长子串
    Python两数相加
    Python两数之和
    DBMS,B树和B+树
    浮点数表示
    Lamada表达式
    Java编程思想P159页的错误
  • 原文地址:https://www.cnblogs.com/yja9010/p/3178811.html
Copyright © 2011-2022 走看看