Microsoft.Jet.OLEDB.4.0和Microsoft.ACE.OLEDB.12.0的区别

如题所述

区别如下:

1、Jet 引擎,可以访问 Office 97-2003,但不能访问 Office 2007。

2、ACE 引擎是随 Office 2007 一起发布的数据库连接组件,既可以访问 Office 2007,也可以访问 Office 97-2003。

3、Microsoft.ACE.OLEDB.12.0 可以访问正在打开的 Excel 文件,而 Microsoft.Jet.OLEDB.4.0 是不可以的。

4、Jet连接语句:Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=|DataDirectory|\您
的数据库名.mdb;Persist
Security Info=True;Jet OLEDB:Database Password=您的数据库密码

5、ACE连接语句:Provider=Microsoft.ACE.OLEDB.12.0;Data
Source=|DataDirectory|\您
的数据库名.accdb;Persist Security Info=True;Jet
OLEDB:Database Password=您的数据库密码

扩展资料:

需要注意的问题和解决方法:

1.Microsoft.Jet.OLEDB.4.0不要写成Miscrosoft.Jet.OLEDB.4.0,;

2.Data Source不要写成“Data Sourse”,

3.检查是否安装了Office

4.重新安装注册MDAC28.exe (一般你的安装目录里有或者到微软的官方网站上下) 

5.如果是64位平台,也可能出现这种情况

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-08-23

1、共同点:所有都是连接到Excel对象的接口引擎

2、不同点:

1)对于不同版本的Excel,有两个接口可供选择:Microsoft.Jet.OLEDB.4.0(以下简称Jet引擎)

和microsoft.ace.oledb.12.0(以下简称ACE引擎)。Jet引擎可以访问office 97-2003,但是你无法

访问office 2007。ACE引擎是与Office 20,071一起发布的数据库连接组件,您可以访问Office 

2007或Office 97-2003。

2)microsoft.ace.oledb.12.0可以访问正在打开的Excel文件,而microsoft.jet.oledb.4.0是不可

能的。因此,在使用不同版本的Office时,请注意使用正确的引擎。

扩展资料:

从2007版本开始,Access包含特定于Office的Jet版本,最初称为Office Access连接引擎

(ACE),但现在称为Access数据库引擎。此引擎完全向后兼容以前版本的Jet引擎,因此它从早期

的Access版本读取和写入(.mdb)文件。

它引入了一种新的默认文件格式(.accdb),它为Access带来了一些改进,包括复杂数据类型,如

多值字段,附件数据类型和备注字段中的历史记录跟踪。它还带来了安全性和加密性改进,并支持

与Microsoft Windows SharePoint Services 3.0和Microsoft Office Outlook 2007的集成。

本回答被网友采纳
第2个回答  推荐于2017-09-11
在通过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 是不可以的。
所以,在使用不同版本的office时,要注意使用合适的引擎。本回答被提问者和网友采纳
第3个回答  2018-06-28
在通过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 是不可以的。
所以,在使用不同版本的office时,要注意使用合适的引擎。