64位操作系統不支持Microsoft OLE DB Provider for Jet驅動程序,也不支持更早的Microsoft Access Driver (*.mdb)方式連接。所以,程序里面的鏈接字符串不能正常工作。需要修改下IIS的工作環境,改成32位的,在IIS的管理界面中,把應用程序池中的默認應用程序池常規選項中的32位方式啟用就可以了。
Win7 下Access的 ODBC連接
直接在
控制面板---管理工具----數據源(ODBC)
打開數據源配置,發現只有SQLServer的驅動,其他的都沒有了。
解決方法是:
C:/Windows/SysWOW64
在這個目錄下找到:
odbcad32.exe
這個文件,雙擊打開。
里面有很多可用個數據源驅動,然后就可用添加連接Access的ODBC的數據源了。
java學到Access數據庫那里用ODBC時提示:”java.sql.SQLException: [Microsoft][ODBC 驅動程序管理器] 在指定的 DSN 中,驅動程序和應用程序之間的體系結構不匹配”,現在終於弄好了,把過程跟大家分享一下。
Win7 64控制面板里面直接打開ODBC就只有Mysql,添加Access會出錯:“[Microsoft][ODBC 驅動程序管理器] 在指定的 DSN 中,驅動程序和應用程序之間的體系結構不匹配”,到網上查了一下,直接運行C:/Windows/SysWOW64/odbcad32.exe 就是32位ODBC,這個里面倒是能添加Access數據庫了。然后用我的64位Java編譯,運行后還是有錯:“指定之DNS中的驅動程式和應用程式架構不相符”,終於明白64位Java要對應64位ODBC,於是安裝了Microsoft Office 2010 64bit 這回使用控制面板里面的64位ODBC終於能加Access數據庫了,Java編譯運行也正常了。此時我在使用目錄里面的32位ODBC反而不行了(之前的32位Office卸載了)提示:“找不到Microsoft Access Driver (*.mdb,*.accdb)ODBC驅動程序的安裝例程,請重新安裝驅動程序”。據我分析如果安裝32位Java則用系統目錄里的32位Odbc也是可以的,所以軟件的構架要相對應。