“无法为链接服务器 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中文网其他相关文章!