0
我在Windows 10 64位機器上使用Office 2016 32位和SQL Server 64位。我已經安裝了驅動程序Microsoft Access數據庫引擎2010可再發行版。通過SQL Server中的鏈接服務器訪問OPEN Excel表
以下代碼允許我成功讀取來自SQL Server的Excel工作簿中已關閉的表中的行。
EXEC sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1
GO
EXEC sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1
GO
EXEC sp_addlinkedserver
@server = 'ExcelServer2',
@srvproduct = 'Excel',
@provider = 'Microsoft.ACE.OLEDB.12.0',
@datasrc = 'C:\Temp\book2.xlsx',
@provstr = 'Excel 12.0;IMEX=1;HDR=YES;'
SELECT * FROM ExcelServer2...[Sheet1$]
但是,如果工作簿是開放然後我得到以下錯誤:
Msg 7399, Level 16, State 1, Line 1
The OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "excelserver2" reported an error. The provider did not give any information about the error.
Msg 7303, Level 16, State 1, Line 1
Cannot initialize the data source object of OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "excelserver2".
是否有從一個開放工作簿讀取行什麼辦法?