SQL SERVER OLEDDB提供程序“Microsoft.ACE.OLEDB.12.0”用于链接服务器“(空)”返回消息“未指定错误”


摘要:
下文讲述OLEDB链接服务器返回错误信息的处理方法,如下所示:
实验环境:sql server 2008 R2


在数据读取中,我们经常使用oledb读取excel数据,下文讲述使用oledb读取excel信息,返回相应的错误信息,如下所示:

  SELECT * FROM OPENROWSET(
    'Microsoft.ACE.OLEDB.12.0'
         ,'Excel 12.0;Database=D:\tmptest.xlsx;HDR=YES;IMEX=1'
          ,'SELECT * FROM [Sheet1$]')
 -----返回错误信息-------
  OLEDB提供程序“Microsoft.ACE.OLEDB.12.0”用于链接服务器“(空)”返回消息“未指定错误”。   
 

解决方法:

1.在数据库上执行以下sql脚本
USE [master]
GO
EXEC master.dbo.sp_MSset_oledb_prop N’Microsoft.ACE.OLEDB.12.0′, N’DisallowAdHocAccess’, 0
GO