asp.net通过excel批量导入

excel通过c#导入数据库,其基本就是将excel数据读取到dataset中,然后可以对dataset进行修改在导入数据库中,当然如果是直接存入sql server中可以用sql代码直接存入数据,方法很多自己百度吧,在这里只介绍如何转成dataset处理后再存入数据库(数据库任意)

       C#代码连接excel

//建立与Excel的连接

            OleDbConnection objConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + excel的路径 + ";" + "Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'");

//打开连接

            objConn.Open();

//注意后面的符号“

       判断是否是excel

              string IsXls = System.IO.Path.GetExtension(路径).ToString().ToLower();//System.IO.Path.GetExtension获得文件的扩展名

                if (IsXls != ".xls"//

                {

                    Ext.Msg.Show(new MessageBox.Config

                    {

                        Title = "消息",

                        Message = "只可选择选择excel文件",

                        Icon = MessageBox.Icon.INFO,

                        Buttons = MessageBox.Button.OK

                    });

                    return;//当选择的不是Excel文件时,返回

                }

                Else{}

案例代码:

public static DataSet ds;

 

        //将excel中的数据导入gridview中

        public void ReadExcel(string sExcelFile, Store s)

        {

            ds = new DataSet();

            //建立与Excel的连接

            OleDbConnection objConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + sExcelFile + ";" + "Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'");

//打开连接

            objConn.Open();

//将数据放入datatable

            DataTable schemaTable = objConn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null);

            //读取数据

            //读取excel内的第一行第二列

            //读取格式也可以是Rows[i]["登录号"].ToString().Trim()

            string tableName = schemaTable.Rows[0][2].ToString().Trim();

 

            string strSql = "select * from [" + tableName + "]";

            OleDbCommand objCmd = new OleDbCommand(strSql, objConn);

            OleDbDataAdapter myData = new OleDbDataAdapter(strSql, objConn);

            //将数据导入dataset中,导入dataset中的数据就可以随意处理了

myData.Fill(ds, tableName);

            objConn.Close();

            //读取dataset中某表有多少条数据

            //ds.Tables[0].Rows.Count;

            //读取dataset中的数据

//ds.Tables[0].Rows[i]["学生姓名"].ToString().Trim();

            //加上循环,就可以将数据导入数据库了

        }

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牟云飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值