• 使用ado访问excel中的数据


    【1】链接数据源(excel文件)

    (1)配置链接字符串:

         string connString = @"Provider = Microsoft.Jet.OLEDB.4.0; Extended Properties = Excel 8.0; Data Source = C:UsersBoBoDesktopstudent.xlsx";
             (2)创建链接对象:  

         OleDbConnection oleDbConnection = new OleDbConnection(connString);

    【2】打开链接对象

              

         oleDbConnection.Open();

    【3】创建adpter和dataset对象并且填充到数据集中

           string sql = "select * from [Student$]";//和sqlserver查询语句几乎差不多,就是在表名上需要加上[表名$]
           OleDbDataAdapter da = new OleDbDataAdapter(sql, oleDbConnection);
           DataSet ds = new DataSet();
           da.Fill(ds);
    【4】返回数据集
    	return ds;
    【5】关闭链接
         oleDbConnection.Close()
    总结
    03和07及以上版本的引擎不同,03是Microsoft.Jet.OLEDB.4.0 ,07及以上是Microsoft.ACE.OLEDB.12.0 。
    还发现一个小差别就是Microsoft.Jet.OLEDB.4.0引擎的Excel文档行索引从1开始,而Microsoft.ACE.OLEDB.12.0 的行索引从0开始。
    所以在配置链接字符串的时候需要注意,
     string connString = @"Provider = Microsoft.Jet.OLEDB.4.0; Extended Properties = Excel 8.0; Data Source = C:UsersBoBoDesktopstudent.xlsx";
    中的Provider配置时需要修改对应的引擎版本。但是经过我是用4.0的版本操控excel2013也能够行。说明,Data Source为excle文件的路径。 
    【4】返回数据集
    	return ds;
    【5】关闭链接
         oleDbConnection.Close()
    总结
    03和07及以上版本的引擎不同,03是Microsoft.Jet.OLEDB.4.0 ,07及以上是Microsoft.ACE.OLEDB.12.0 。
    还发现一个小差别就是Microsoft.Jet.OLEDB.4.0引擎的Excel文档行索引从1开始,而Microsoft.ACE.OLEDB.12.0 的行索引从0开始。
    所以在配置链接字符串的时候需要注意,
     string connString = @"Provider = Microsoft.Jet.OLEDB.4.0; Extended Properties = Excel 8.0; Data Source = C:UsersBoBoDesktopstudent.xlsx";
    中的Provider配置时需要修改对应的引擎版本。但是经过我是用4.0的版本操控excel2013也能够行。说明,Data Source为excle文件的路径。
    
    
                                        
    
  • 相关阅读:
    linux创建用户
    Java理解笔记------杂项
    java高效并发
    GPG备份秘钥
    (二)数据同步利器syncthing
    (一)安装samba
    (序)利旧打造私有云
    mysql的docker化安装
    (八)netty的SSL renegotiation攻击漏洞
    (七)json序列化
  • 原文地址:https://www.cnblogs.com/cqxhl/p/12993317.html
Copyright © 2020-2023  润新知