「無法為連結伺服器null 建立OLE DB 提供者Microsoft.Jet.OLEDB.4.0 的實例」
報告的問題涉及嘗試使用T-SQL 查詢將資料從表格匯出到Excel 檔案時遇到錯誤。特定錯誤訊息表示為連結伺服器建立「Microsoft.Jet.OLEDB.4.0」OLE DB 提供者的實例失敗。
要解決此問題,需要驗證多項設定和設定:
臨時分散式查詢: 透過執行下列指令檢查是否啟用了「臨時分散式查詢」指令:
EXEC master.dbo.sp_configure 'show advanced options', 1; GO RECONFIGURE; EXEC master.dbo.sp_configure 'Ad Hoc Distributed Queries', 1; GO RECONFIGURE;
OLE DB 提供者配置:執行下列命令以啟用「Microsoft.Jet.OLEDB.4.0」OLE DB 所需的屬性提供者:
EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.Jet.OLEDB.4.0', N'AllowInProcess', 1 GO EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.Jet.OLEDB.4.0', N'DynamicParameters', 1 GO
OLE DB提供者註冊:透過執行以下指令來註冊「msexcl40.dll」檔案:
regsvr32 C:\Windows\SysWOW64\msexcl40.dll
請注意,對於SQL Server 2014 及更高版本,「DynamicParameters」屬性應該在「sp_MSset_oledb_prop」指令中使用“DynamicParam”來代替。
以上是為什麼在將資料匯出到 Excel 時出現「無法建立 OLE DB 提供者 Microsoft.Jet.OLEDB.4.0 的實例」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!