这些是我的症状:(XP专业版,32位)
- 访问.mdb数据库(除了Access 2007本身)的程序无法获取任何数据
- 使用Visual Studio 2008中的数据源连接到MDB显示表,但无法查询。您从Microsoft JET数据库引擎收到“未知错误”
-ArcCatalog无法读取个人地理数据库(mdb),打开数据库后,其中没有要素类
-Trying以显示ODBC数据源管理器中的用户DSN“MS Access数据库”的属性返回错误
“无法找到Microsoft Access驱动程序(* .mdb,* .accdb)ODBC驱动程序的安装例程。请重新安装驱动程序。”
我尝试重新安装最新的MDAC(通过将其设置为Windows 2000的兼容模式)和最新的JET驱动程序。重新安装XP SP3 还尝试了很多regsvr32体操与dao350.dll和dao360.dll,卸载了dao350等等。没有用。
答案 0 :(得分:1)
(是的,我正在回答我自己的问题,记录我的解决方案)
我还应该注意,除了上面的内容,我也无法使用SQL Native Client驱动程序。
在注册表中,在HKLM \ SOFTWARE \ ODBC下,\ ODBC.INI分支包含任何已定义的连接,\ ODBCINST.INI包含已安装驱动程序的记录。
我检查了一个类似的开发机器,我的ODBCINST.INI丢失了很多条目。我责怪最近用于清理我的垃圾系统的ccleaner应用程序。
从另一台计算机导出注册表分支,并通过我现有的密钥导入后,一切都恢复正常。
以下是一些核心记录,用于生成.reg脚本。你应该从类似的机器上获得完整的清单。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI]
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Microsoft Access Driver (*.mdb)]
"UsageCount"=dword:00000002
"Driver"="C:\\WINDOWS\\system32\\odbcjt32.dll"
"Setup"="C:\\WINDOWS\\system32\\odbcjt32.dll"
"APILevel"="1"
"ConnectFunctions"="YYN"
"DriverODBCVer"="02.50"
"FileUsage"="2"
"FileExtns"="*.mdb"
"SQLLevel"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Microsoft Access Driver (*.mdb, *.accdb)]
"UsageCount"=dword:00000003
"Driver"="C:\\PROGRA~1\\COMMON~1\\MICROS~1\\OFFICE12\\ACEODBC.DLL"
"Setup"="C:\\PROGRA~1\\COMMON~1\\MICROS~1\\OFFICE12\\ACEODBC.DLL"
"APILevel"="1"
"ConnectFunctions"="YYN"
"DriverODBCVer"="02.50"
"FileUsage"="2"
"FileExtns"="*.mdb,*.accdb"
"SQLLevel"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Microsoft Excel Driver (*.xls)]
"UsageCount"=dword:00000002
"Driver"="C:\\WINDOWS\\system32\\odbcjt32.dll"
"Setup"="C:\\WINDOWS\\system32\\odexl32.dll"
"APILevel"="1"
"ConnectFunctions"="YYN"
"DriverODBCVer"="02.50"
"FileUsage"="1"
"FileExtns"="*.xls"
"SQLLevel"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)]
"UsageCount"=dword:00000003
"Driver"="C:\\PROGRA~1\\COMMON~1\\MICROS~1\\OFFICE12\\ACEODBC.DLL"
"Setup"="C:\\PROGRA~1\\COMMON~1\\MICROS~1\\OFFICE12\\ACEODEXL.DLL"
"APILevel"="1"
"ConnectFunctions"="YYN"
"DriverODBCVer"="02.50"
"FileUsage"="2"
"FileExtns"="*.xls,*.xlsx, *.xlsb"
"SQLLevel"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\SQL Native Client]
"UsageCount"=dword:00000001
"Driver"="c:\\WINDOWS\\system32\\sqlncli.dll"
"Setup"="c:\\WINDOWS\\system32\\sqlncli.dll"
"APILevel"="2"
"ConnectFunctions"="YYY"
"CPTimeout"="60"
"DriverODBCVer"="09.00"
"FileUsage"="0"
"SQLLevel"="1"
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\SQL Server]
"UsageCount"=dword:00000002
"Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
"Setup"="C:\\WINDOWS\\system32\\sqlsrv32.dll"
"SQLLevel"="1"
"FileUsage"="0"
"DriverODBCVer"="03.50"
"ConnectFunctions"="YYY"
"APILevel"="2"
"CPTimeout"="60"