ASP.NET实现Excel导入数据库

2025-10-28 21:14:42

1、在页面拖入所需控件分别为:FileUpload和Button

ASP.NET实现Excel导入数据库

ASP.NET实现Excel导入数据库

2、进入后台编写代码,首先编写导入方法:

    /// <param name="filenameurl">服务器路径</param>

    /// <param name="table">表名</param>

    public DataSet ExecleDs(string filenameurl, string table)

    {

        string strConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + filenameurl + ";Extended Properties='Excel 12.0; HDR=YES; IMEX=1'";

        OleDbConnection conn = new OleDbConnection(strConn);

        conn.Open();

        DataSet ds = new DataSet();

        OleDbDataAdapter odda = new OleDbDataAdapter("select * from [Sheet1$]", conn);

        odda.Fill(ds, table);

        return ds;

    }

3、继续编辑导入按钮:

 protected void Button1_Click(object sender, EventArgs e)

    {

        if (FileUpload1.HasFile == false)//检查FileUpload是否有文件

        {

            Response.Write("<script>alert('请您选择Excel文件')</script> ");

            return;

        }

        string IsXls = System.IO.Path.GetExtension(FileUpload1.FileName).ToString().ToLower();//获取文件扩展名

        if (IsXls != ".xlsx")

        {

            Response.Write("<script>alert('只可以选择Excel文件')</script>");

            return;

        }

        string filename = DateTime.Now.ToString("yyyymmddhhMMss") + FileUpload1.FileName;              //获取Execle文件名  DateTime日期函数

        string savePath = Server.MapPath(("~\\Files\\") + filename);//获得虚拟服务器相对路径(注:在项目中建立Files文件夹)

        FileUpload1.SaveAs(savePath);                        //将上传文件保存

        DataSet ds = ExecleDs(savePath, filename);    //调用自定义方法

        DataRow[] dr = ds.Tables[0].Select();            

        int rowsnum = ds.Tables[0].Rows.Count;

        if (rowsnum == 0)

        {

            Response.Write("<script>alert('Excel表为空表!')</script>"); 

        }

        else

        {

            for (int i = 0; i < dr.Length; i++)

            {

                string name = dr[i]["姓名"].ToString();

                string sex = dr[i]["性别"].ToString();

                string age = dr[i]["年龄"].ToString();

                //其中姓名,性别,年龄为Excel表头

                //此处为添加数据库的insert into 

            }

            Response.Write("<script>alert('Excle表导入成功!');</script>");

        }

    }

ASP.NET实现Excel导入数据库

ASP.NET实现Excel导入数据库

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢