狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網站管理員

讀取Excel的記錄并導入SQL數(shù)據庫

admin
2017年11月16日 23:48 本文熱度 7361

準備一下,近段時間,需要把Excel的數(shù)據導入數(shù)據庫中。

引用命名空間:

using System.Configuration;
using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;

 

你可以寫一個方法,是去讀取Excel文檔的方法,返回DataSet數(shù)據集:

 

復制代碼
private DataSet ImportExcelToDataSet(string virtualPath, string sqlQueryStatement)
    {
        string excelConnectionString = DB.ExcelConnectionString(Server.MapPath(virtualPath));
        OleDbConnection dc = new OleDbConnection(excelConnectionString);
        OleDbDataAdapter da = new OleDbDataAdapter(sqlQueryStatement, dc);
        DataSet ds = new DataSet();
        da.Fill(ds);
        return ds;
    }
復制代碼


導入數(shù)據庫,在數(shù)據庫中,需要創(chuàng)建一個表來存儲Excel導入來的數(shù)據:



接下來,你可以使作SqlBulkCopy的方法進行復制數(shù)據庫:

 

復制代碼
try
        {
            string cs = ConfigurationManager.ConnectionStrings["InsusSqlConnectionString"].ConnectionString;
            using (SqlConnection sqlConn = new SqlConnection(cs))
            {
                string sqlQueryStatement = "SELECT [Material],[Plnt],[Level],[Item],[Component],[Object description] FROM [Sheet1$]";
                string virtualPath = "~/App_Data/Book1.xlsx";

                DataSet ds = ImportExcelToDataSet(virtualPath, sqlQueryStatement);

                DataTable dt = ds.Tables[0];

                sqlConn.Open();
                using (SqlBulkCopy sqlbc = new SqlBulkCopy(sqlConn))
                {
                    sqlbc.DestinationTableName = "BOM";
                    sqlbc.ColumnMappings.Add("Material", "Material");
                    sqlbc.ColumnMappings.Add("Plnt", "Plnt");
                    sqlbc.ColumnMappings.Add("Level", "Level");
                    sqlbc.ColumnMappings.Add("Item", "Item");
                    sqlbc.ColumnMappings.Add("Component", "Component");
                    sqlbc.ColumnMappings.Add("Object description", "Object description");
                    sqlbc.WriteToServer(dt);
                    Response.Write("數(shù)據導入成功!");
                }
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
復制代碼


演示:

 

 

下面內容于2017-10-17 14:38分添加:

使用sqlDataReader來導入,沒有做過多的測試,速度與DataSet快不了多少:


復制代碼
private OleDbDataReader ImportExcelToDataReader(string virtualPath, string sqlQueryStatement)
    {
        string excelConnectionString = DB.ExcelConnectionString(Server.MapPath(virtualPath));
        OleDbConnection oleConn = new OleDbConnection(excelConnectionString);
        OleDbCommand oleComm = new OleDbCommand(sqlQueryStatement, oleConn);

        oleConn.Open();
        return oleComm.ExecuteReader();
    }
復制代碼


SqlBulkCopy的方法:


 

復制代碼
 string sqlQueryStatement = "SELECT [Material],[Plnt],[Level],[Item],[Component],[Object description] FROM [Sheet1$]";
        string virtualPath = "~/App_Data/Book1.xlsx";

        string cs = ConfigurationManager.ConnectionStrings["InsusSqlConnectionString"].ConnectionString;
        SqlConnection sqlConn = new SqlConnection(cs);

        OleDbDataReader reader = ImportExcelToDataReader(virtualPath, sqlQueryStatement);

        using (SqlBulkCopy bulkCopy = new SqlBulkCopy(sqlConn))
        {
            bulkCopy.DestinationTableName = "BOM";
            try
            {
                sqlConn.Open();
                bulkCopy.WriteToServer(reader);
                Response.Write("數(shù)據導入成功。");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                reader.Close();
                sqlConn.Close();
            }
        }
復制代碼

該文章在 2017/11/16 23:48:37 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業(yè)務管理,結合碼頭的業(yè)務特點,圍繞調度、堆場作業(yè)而開發(fā)的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved