• excel数据导入到sqlserver中---------工作笔记


    调用页面:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using JuMi.BLL.Business;
    using System.Data;
    using System.Data.OleDb;
    using System.Windows.Forms;
    
    using JuMi.Model.Business;
    using JuMi.BLL.Business;
    
    namespace JuMi.Web.Form.Manager.Business
    {
        public partial class WebForm1 : JuMi.Web.UI.BasePage
        {
            protected void Page_Load(object sender, EventArgs e)
            {
    
    
            }
            /// <summary>
            /// 导入广告商信息
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            protected void btnAdverInfo_Click(object sender, EventArgs e)
            {
                DataTable dt = ExcelDemo.GetExcelToDatatable("F:\Demo\excelDemo.xlsx", "table");
                int count = 0;
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    Model_Advertiser model = new Model_Advertiser();
                    model.Adver_CompanyName = dt.Rows[i][0].ToString();//名称
                    model.Adver_Distinguish = dt.Rows[i][1].ToString();//税号
                    model.Adver_RegisPhone = dt.Rows[i][2].ToString();//电话
                    model.Adver_BankNumber = dt.Rows[i][3].ToString();//银行账号
                    model.Adver_BankAddress = dt.Rows[i][4].ToString();//开户行地址
                    model.Adver_RegisAdress = dt.Rows[i][5].ToString();//注册地址
                    model.Adver_State = 0;
                    if (AdvertiserBLL.Add(model) > 0)
                    {
                        count++;
                    }
                }
                if (count >= dt.Rows.Count)
                {
                    JscriptMsgSuccess("广告商信息导入成功!", "", "function(){api.reload();}");
                }
                else
                {
                    JscriptMsgError("广告商信息导入失败!", "", "function(){api.reload();}");
                }
            }
    
        }
    }
    

      

    实现方法页:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data;
    using System.Data.OleDb;
    
    namespace JuMi.BLL.Business
    {
        public class ExcelDemo
        {
            /// <summary>
            /// Excel数据导入Datable
            /// </summary>
            /// <param name="fileUrl">文件路径</param>
            /// <param name="table"></param>
            /// <returns></returns>
            public static DataTable GetExcelToDatatable(string fileUrl, string table)
            {
                //支持office2007之前的 .xls
                //const string cmdText = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;IMEX=1';";//链接字符串
                //支持.xls和.xlsx,即包括office2010等版本的   HDR=Yes代表第一行是标题,不是数据;
                const string cmdText = "Provider=Microsoft.Ace.OleDb.12.0;Data Source={0};Extended Properties='Excel 12.0; HDR=Yes; IMEX=1'";
                DataTable dt = null;
                //建立连接
                OleDbConnection conn = new OleDbConnection(string.Format(cmdText, fileUrl));
                try
                {
                    //打开链接
                    if (conn.State == ConnectionState.Broken || conn.State == ConnectionState.Closed)
                    {
                        conn.Open();
                    }
                    DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
                    //获取excel的第一个sheet名称
                    string sheetName1 = schemaTable.Rows[0]["TABLE_NAME"].ToString().Trim();
                    //查询sheet数据
                    string strSql1 = "select * from [" + sheetName1 + "]";
                    OleDbDataAdapter da = new OleDbDataAdapter(strSql1, conn);
                    DataSet ds = new DataSet(); da.Fill(ds, table);
                    dt = ds.Tables["" + table + ""];
                    return dt;
    
                }
                catch (Exception exc)
                {
                    throw exc;
                }
                finally
                {
                    conn.Close();
                    conn.Dispose();
                }
            }
    
    
    
    
        }
    }
  • 相关阅读:
    复习题之后缀表达式
    专项训练之枚举
    专项训练之二分
    深夜毒物
    笑面的学校日常(14)最近一次更新2017 04 06
    了不起的竞赛生(7)(最近一次更新2017 04 06)
    水题日常——动态规划 洛谷
    Bzoj 1926: [Sdoi2010]粟粟的书架(二分答案+乱搞+主席树)
    Cogs 1708. 斐波那契平方和(矩阵乘法)
    Codevs 1482 路线统计(矩阵乘法)
  • 原文地址:https://www.cnblogs.com/DBtwoer/p/5161144.html
Copyright © 2020-2023  润新知