1.Microsoft.ACE.OLEDB.12.0 与Microsoft.Jet.OLEDB.4.0 

在通过ADO对Excel对象进行连接时(此时Excel则认为是一个数据源),需要配置对Excel数据源对应的连接串,这个连接串中包括了Provider信息(其实类似对数据库进行连接操作时,都需要指定连接字符串),以下是一行连接串源代码:
strConnString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strExcelFilePath & ";Extended Properties=Excel 12.0"
这里的Provider使用了Microsoft.ACE.OLEDB.12.0,其实除了Microsoft.ACE.OLEDB.12.0,还有Microsoft.Jet.OLEDB.4.0,它们俩者之间么联系和区别: 共同点:都是做为连接Excel对象的接口引擎
不同点
对于不同的Excel版本,有两种接口可供选择:Microsoft.Jet.OLEDB.4.0(以下简称 Jet 引擎)和Microsoft.ACE.OLEDB.12.0(以下简称 ACE 引擎)。
Jet 引擎,可以访问 Office 97-2003,但不能访问 Office 2007。
ACE 引擎是随 Office 2007 一起发布的数据库连接组件,既可以访问 Office 2007,也可以访问 Office 97-2003。
另外:Microsoft.ACE.OLEDB.12.0 可以访问正在打开的 Excel 文件,而 Microsoft.Jet.OLEDB.4.0 是不可以的。
2.上传Excel的时候长时间没有反应或者报The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine错误
  通常解决办法:下载AccessDatabaseEngine.exe(用于帮助在 2010 Microsoft Office System 文件与非 Microsoft Office 应用程序之间传输数据)直接双击安装重启电脑,
         打开IIS-->找到与网站相对应的应用程序池-->高级设置-->常规-->启用32位应用程序的值为:True。
3.两个取出Excel中数据并分别放到DataSet和DataTable中列子:
     //filePath:上传Excel路径
     public static DataTable ExcelToDataTable(string filePath) {
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filePath + @"; Extended Properties=""Excel 12.0 Macro;HDR=YES"";");
conn.Open();
OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", conn);
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
} public static DataSet ExcelToDataSet(string filePath)
{
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filePath + @"; Extended Properties=""Excel 12.0 Macro;HDR=YES"";");
conn.Open();
OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", conn);
DataSet ds = new DataSet();
da.Fill(ds,"XXX");
return ds;
}

  

最新文章

  1. 在CentOS或RHEL防火墙上开启端口
  2. 第六章 jQuery和ajax应用
  3. tomcat filewatchdog but has failed to stop it原因以及解决方法
  4. VMware ESXI5.0的安装配置 zz
  5. 4、网页制作Dreamweaver(样式表CSS)
  6. C++ map详解
  7. 判断客户浏览器是否支持cookie
  8. Storm ui 展示字段说明
  9. CentOS 7 启动VNC失败问题
  10. (六)boost库之内存管理shared_ptr
  11. 自定义MVP .net框架
  12. Python笔记·第二章—— Python的编码问题(一)
  13. emqtt 试用(六)系统主题
  14. 报文ISO8583协议
  15. 26 Arcpy跳坑系列——ExportToPNG
  16. 线性表->链式存储->循环链表
  17. 在UAP中如何通过WebView控件进行C#与JS的交互
  18. 2019-03-26 SpringBoot项目部署遇到跨域问题,记录一下解决历程
  19. 正则表达式-python-无捕获分组与分支选择
  20. ASP.net MVC 文件下载的几种方法

热门文章

  1. Python----定义
  2. 【转载】经典10道c/c++语言经典笔试题(含全部所有参考答案)
  3. linux 防火墙--firewalld学习
  4. javascript将form表单中的元素值封装成json格式
  5. 转载:Struts2.3.15.1升级总结
  6. php批量上传图片并把图片名放入数据库
  7. SQL Server 与 Entity Framework 级联删除
  8. VS2013中使用GDI+绘图
  9. Resharper TAB 傻吊
  10. Smarty 插件开发