ASP.NET导入Excel到SQL数据库

本文介绍了如何在ASP.NET环境下,通过使用OleDbConnection和OleDbDataAdapter从上传的Excel文件中读取数据,并将这些数据插入到指定的数据库表中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

protected void btnChange_Click(object sender, EventArgs e)

        {

            UserInfoClass tClass = (UserInfoClass)Session["UserInfo"];

            string tLanguageType = tClass.Language;

//获取文件路径

            string filePath = this.file1.PostedFile.FileName;

            if (filePath != "")

            {

                if (filePath.Contains("xls"))//判断文件是否存在

                {

                    InputExcel(filePath);

                }

                else

                {

                    MessageBox.Show("请检查您选择的文件是否为Excel文件!谢谢!");

                }

            }

            else

            {

                MessageBox.Show("请先选择导入文件后,再执行导入!谢谢!");

            }

        }

 

        private void InputExcel(string pPath)

        {

            string conn = "Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source =" + pPath + ";Extended Properties='Excel 8.0;HDR=False;IMEX=1'";

            OleDbConnection oleCon = new OleDbConnection(conn);

            oleCon.Open();

            string Sql = "select * from [Sheet1$]";

            OleDbDataAdapter mycommand = new OleDbDataAdapter(Sql, oleCon);

            DataSet ds = new DataSet();

            mycommand.Fill(ds, "[Sheet1$]");

            oleCon.Close();

            int count = ds.Tables["[Sheet1$]"].Rows.Count;

            for (int i = 0; i < count; i++)

            {

                string tUserID, tUserName, tDept, tEmail, tLeader, tAngent;

                tUserID = ds.Tables["[Sheet1$]"].Rows[i]["員工代號"].ToString().Trim();

                tUserName = ds.Tables["[Sheet1$]"].Rows[i]["員工姓名"].ToString().Trim();

                tDept = ds.Tables["[Sheet1$]"].Rows[i]["所屬部門代號"].ToString().Trim();

                tEmail= ds.Tables["[Sheet1$]"].Rows[i]["E-Mail Address"].ToString().Trim();

                tLeader = ds.Tables["[Sheet1$]"].Rows[i]["直属主管"].ToString().Trim();

                tAngent = ds.Tables["[Sheet1$]"].Rows[i]["代理人"].ToString().Trim();

                string excelsql = "insert into " + this.UserInfo.Company + "..[resak] (resak001, resak002, resak015,resak005,resak013,resak009) values ('" + tUserID + "','" + tUserName + "','" + tDept + "','" + tEmail + "','" + tLeader + "','" + tAngent + "')";

                DBCommand cmd = DscDBData.GetDataDBCommand();

                cmd.ExeNonQuery(excelsql);

            }

        }

当然此部分内容拿过来要稍作修改,比如最后的执行Insert语句的部分,等内容。

上面完成了ASP.NET下导入Excel到数据库的功能。

 

转载于:https://www.cnblogs.com/a-cloud/p/4497422.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值