链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Ace.OleDb.12.0" 报错。提供程序未给出有关错误的任何信息。

【错误信息】

消息 7399,级别 16,状态 1,第 1 行
链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Ace.OleDb.12.0" 报错。提供程序未给出有关错误的任何信息。

 

【运行环境】

SQL SERVER 2008 R2、SQL Server  Management Studio 2008 R2、Win7 64位、OFFICE 2010  64位(注:32位系统请安装32位版本的Office 2010)

 

【执行代码】

[sql]  view plain copy
  1. -- wonsoft.cn  
  2. --   
  3. SELECT   *  
  4. FROM      OPENDATASOURCE(  
  5.          'Microsoft.Ace.OleDb.12.0',  
  6.          'Extended Properties="Excel 12.0;HDR=YES;IMEX=1";Data Source="D:\test.xlsx"'  
  7.          )...[sheet1$]  

注:执行的代码没有错误,错误的根源不在此。

 

【解决方案】

1、控制面板/管理工具/服务/SQL Server (SQLEXPRESS)  --> 右键 属性 --> 登录 --> 设置: 登录身份=本地系统账户  --> 重启电脑

 

2、修改ACE接入参数

[sql]  view plain copy
  1. USE [master]    
  2. GO    
  3. EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1    
  4. GO    
  5. EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1    
  6. GO    

或:

[plain]  view plain copy
  1. Windows Registry Editor Version 5.00    
  2.     
  3. [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SQL Server\MSSQL10.EXP2008\Providers\Microsoft.ACE.OLEDB.12.0]    
  4. "AllowInProcess"=dword:00000001    
  5. "DynamicParameters"=dword:00000001    

或:

[plain]  view plain copy
  1. SQL Management Studio:SQL服务器-->服务器对象-->链接服务器-->Microsoft.ACE.OLEDB.12.0 属性-->常规-->选中:1、动态参数;2、允许进程内  

注:以下提示则要设置全部都不选。

链接服务器"(null)"的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 返回了消息 "未指定的错误"。

消息 7303,级别 16,状态 1,第 1 行

无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 的数据源对象。


文章转载来源:http://blog.csdn.net/wonsoft/article/details/7730976?reload

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值