a-c# database
[C#] 解決'Microsoft.ACE.OLEDB.12.0' 提供者並未登錄於本機電腦...
Microsoft Access Database Engine 2010
'Microsoft.ACE.OLEDB.12.0' 提供者並未登錄於本機電腦上
之前資料轉換,都是利用SSIS,在特定時間,將USER做好的excel資料轉入資料庫。
但是最近有些資料希望能夠及時被更新,因此在考量開發時間與作業習慣的情況下,決定採用開發WEB介面讓USER自己將Excel資料上傳並轉入資料庫中。
程式開發完畢本機測試沒有問題,將Web發佈上去,再重新測試時......出現了以下錯誤
'Microsoft.ACE.OLEDB.12.0' 提供者並未登錄於本機電腦上。......
原因是Server上沒有安裝Access Database Engine 2010 的驅動程式。
解法很簡單
到微軟網站下載"Microsoft Access Database Engine 2010 可轉散發套件",並安裝於Server上就可以了.....官網連結載點
Server的環境是Server 2008 32Bit的版本... 所以直接下載安裝的 AccessDatabaseEngine.exe...
裝完後.....還是出現....
'Microsoft.ACE.OLEDB.12.0' 提供者並未登錄於本機電腦上。......
原來是使用者的呼叫環境是(Win 7 X64),所以要一併將 64位元的版本裝上去.....
重新下載..AccessDatabaseEngine_X64.exe 執行安裝。
卻出現 由於目前你已經安裝32位元的office產品,因此無法安裝64位元版本的Microsoft Access Database Engine 2010,若要安裝64位元的版本,請先除32位元的office產品
布拉不拉的說明.......(這下慘了.....)
還好德瑞克大師 (參考聯結) 有提到如何解決此窘境...
若要將 64 位元與 32 位元版本的 Access Database Engine 2010 驅動程式,安裝在同一作業系統上,可以使用以下的方式:
在命令列提示列中,執行:
AccessDatabaseEngine_X64.exe /passive
就可以完成安裝!!
感謝所有前輩提供的解法,自己留作紀錄.....謝謝!!!
水滴可成涓流,涓流可成湖泊大海。
汲取累積知識,將知識堆積成常識;將常識探究成學識;將學識簡化為知識;授人自省。
18863
檢舉文章