SQL SERVER 2008 64位系統(tǒng)無法導(dǎo)入ACCESS/EXCEL怎么辦
操作系統(tǒng)Windows Server 2008 X64,數(shù)據(jù)庫SQL Server 2008 X64,Office 2007(好像只有32位),在存儲過程執(zhí)行OpenDatasource導(dǎo)入Access數(shù)據(jù)的時候遇到問題了,Oledb 4.0已經(jīng)不被支持,以下是遇到的若干錯誤提示:
因為 OLE DB 訪問接口 'Microsoft.Jet.OLEDB.4.0' 配置為在單線程單元模式下運行,所以該訪問接口無法用于分布式查詢。
無法創(chuàng)建鏈接服務(wù)器 "(null)" 的 OLE DB 訪問接口 "Microsoft.Ace.OLEDB.12.0" 的實例。
因為 OLE DB 訪問接口 'Microsoft.Ace.OLEDB.12.0' 配置為在單線程單元模式下運行,所以該訪問接口無法用于分布式查詢 。
解決方案是安裝Office 2010 64位版, 網(wǎng)上有很多下載,然后下載Microsoft Access Database Engine 2010 的X64版本,網(wǎng)上也有下載,兩者缺一不可。
然后改一下OpenDatasource參數(shù),將 Microsoft.Jet.OLEDB.4.0 改為 Microsoft.ACE.OLEDB.12.0,大功告成。
貼上存儲過程部分代碼:
--開啟導(dǎo)入功能 exec sp_configure 'show advanced options',1 reconfigure exec sp_configure 'Ad Hoc Distributed Queries',1 reconfigure --允許在進(jìn)程中使用ACE.OLEDB.12 EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1 --允許動態(tài)參數(shù) EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1 --導(dǎo)入臨時表 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='' )...計劃匯總表') --注意這里,要先關(guān)閉外圍的設(shè)置,然后再關(guān)閉高級選項 exec sp_configure'Ad Hoc Distributed Queries',0 reconfigure exec sp_configure'show advanced options',0 reconfigure --關(guān)閉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
以上內(nèi)容僅是我的個人見解,相信解決辦法不止以上所述,希望大家多多分享自己的意見,共同交流學(xué)習(xí)進(jìn)步。希望本文關(guān)于SQL SERVER 2008 64位系統(tǒng)無法導(dǎo)入ACCESS/EXCEL的解決方案對大家有所幫助。
相關(guān)文章
SQLServer 2008中SQL增強(qiáng)之三 Merge(在一條語句中使用Insert,Update,Delete)
SQLServer 2008中SQL增強(qiáng)之三 Merge(在一條語句中使用Insert,Update,Delete)2011-05-05如何在SQL Server 2008下輕松調(diào)試T-SQL語句和存儲過程
sqlserver2008調(diào)試的要求和條件:如果在引擎所在的電腦或服務(wù)器上調(diào)試,則只需要SA或者WINDOWS用戶登陸即可。如果是異地調(diào)試,則需要設(shè)置防火墻例外,增加SSMS和SQLSERVER.EXE為允許,增加135端口允許通過2013-10-10SQL Server 2008 R2 應(yīng)用及多服務(wù)器管理
所謂多服務(wù)器管理 (Multiserver Administration)就是SQL Server 2008 R2提供的自動管理多個 SQL Server 實例過程的功能。在多服務(wù)器管理中,連接到主服務(wù)器并從其接收作業(yè)的服務(wù)器被稱之為目標(biāo)服務(wù)器。2014-10-10win2008 r2安裝SQL SERVER 2008 R2 不能打開1433端口設(shè)置方法
這篇文章主要介紹了win2008 r2安裝SQL SERVER 2008 R2 不能打開1433端口設(shè)置方法,需要的朋友可以參考下2017-01-01SQL 2008 還原SQL 2005備份文件不成功的解決方法
本文主要介紹了SQL 2008還原SQL 2005備份文件不成功的解決方法,具有很好的參考價值,下面跟著小編一起來看下吧2017-02-02SQL Server 2008 數(shù)據(jù)庫中創(chuàng)建只讀用戶的方法
這篇文章主要介紹了SQL Server 2008 數(shù)據(jù)庫中創(chuàng)建只讀用戶的方法,為了保護(hù)數(shù)據(jù)庫的安全,需要給不同的使用者開通不同的訪問用戶,那么如何簡單的控制用戶的權(quán)限呢?下面我們就創(chuàng)建一個只讀用戶,給大家學(xué)習(xí)使用2015-08-08Microsoft SQL Server 2008 基本安裝說明
這篇文章主要介紹了Microsoft SQL Server 2008 基本安裝說明 ,需要的朋友可以參考下2015-08-08