SQL SERVER 2008 64位零碎無法導入ACCESS/EXCEL怎樣辦。本站提示廣大學習愛好者:(SQL SERVER 2008 64位零碎無法導入ACCESS/EXCEL怎樣辦)文章只能為提供參考,不一定能成為您想要的結果。以下是SQL SERVER 2008 64位零碎無法導入ACCESS/EXCEL怎樣辦正文
操作零碎Windows Server 2008 X64,數據庫SQL Server 2008 X64,Office 2007(仿佛只要32位),在存儲進程執行OpenDatasource導入Access數據的時分遇到問題了,Oledb 4.0曾經不被支持,以下是遇到的若干錯誤提示:
由於 OLE DB 訪問接口 'Microsoft.Jet.OLEDB.4.0' 配置為在單線程單元形式下運轉,所以該訪問接口無法用於散布式查詢。
無法創立鏈接服務器 "(null)" 的 OLE DB 訪問接口 "Microsoft.Ace.OLEDB.12.0" 的實例。
由於 OLE DB 訪問接口 'Microsoft.Ace.OLEDB.12.0' 配置為在單線程單元形式下運轉,所以該訪問接口無法用於散布式查詢 。
處理方案是裝置Office 2010 64位版, 網上有很多下載,然後下載Microsoft Access Database Engine 2010 的X64版本,網上也有下載,兩者缺一不可。
然後改一下OpenDatasource參數,將 Microsoft.Jet.OLEDB.4.0 改為 Microsoft.ACE.OLEDB.12.0,半途而廢。
貼上存儲進程局部代碼:
--開啟導入功用 exec sp_configure 'show advanced options',1 reconfigure exec sp_configure 'Ad Hoc Distributed Queries',1 reconfigure --允許在進程中運用ACE.OLEDB.12 EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1 --允許靜態參數 EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1 --導入暫時表 exec ('insert into jihua(id,[批次號],Right('''+ @filepath +''',charindex(''\'',REVERSE('''+ @filepath +'''))-1),getdate() FROM OPENDATASOURCE (''Microsoft.ACE.OLEDB.12.0'', ''Data Source='+@filepath+';User ID=Admin;Password='' )...方案匯總表') --留意這裡,要先封閉核心的設置,然後再封閉初級選項 exec sp_configure'Ad Hoc Distributed Queries',0 reconfigure exec sp_configure'show advanced options',0 reconfigure --封閉ACE.OLEDB.12的選項 EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 0 EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 0
以上內容僅是我的團體見地,置信處理方法不止以上所述,希望大家多多分享自己的意見,共同交流學習提高。希望本文關於SQL SERVER 2008 64位零碎無法導入ACCESS/EXCEL的處理方案對大家有所協助。