sql server OpenDataSource查询excel数据

SELECT FROM OpenDataSource( 'Microsoft.ACE.OLEDB.12.0','Data Source="d:\test.xlsx";Extended properties=Excel 12.0')...[sheet1$]

 

1、错误提示:尚未注册 OLE DB 访问接口 "Microsoft.ACE.OLEDB.12.0"。

  回答:去AccessDatabaseEngine.exe下载。然后安装就行了

2、错误提示1:

  -- 启用: 

  exec sp_configure 'show advanced options',1 

  reconfigure 

  exec sp_configure 'Ad Hoc Distributed Queries',1 

  reconfigure 

     --使用完毕后,记得要关闭它,因为这是一个安全隐患

     exec sp_configure 'Ad Hoc Distributed Queries',0

     reconfigure

     exec sp_configure 'show advanced options',0

     reconfigure

 

2、错误提示2:关于【无法创建链接服务器 "(null)" 的 OLE DB 访问接口 

   开启以下:

--允许在进程中使用ACE.OLEDB.12
EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1
--允许动态参数
EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1

 需要重新启动机器

  需要重新启动机器

  需要重新启动机器

  需要重新启动机器

 

3、如果出现该错误:

链接服务器"(null)"的 OLE DB 访问接口 "microsoft.ace.oledb.12.0" 返回了消息 "Microsoft Access 数据库引擎无法打开文件“C:\Users\SH\Desktop\其它资料\程志杰\财务处理\闻喜\闻喜县机构代码.xls”或向其写入数据。它已经被其他用户以独占方式打开,或者您没有查看和写入其数据的权限。"。

解决方法:则说明该目录,没有写的权限 ,增加写的权限就可以了。

 

posted @ 2020-01-15 22:44  yclizq  阅读(617)  评论(0编辑  收藏  举报