sql server访问excel文件
-
环境
win7,office2010,sql server 2012
-
过程
1)开启OPENDATASOURCE、OPENROWSET功能
1
2
3
4
|
exec sp_configure 'show advanced options' ,1 reconfigure exec sp_configure 'Ad Hoc Distributed Queries' ,1 reconfigure |
--允许在进程中使用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
2)
select * from
OPENROWSET('Microsoft.Ace.OleDb.12.0'
,'Excel 12.0;HDR=YES;DATABASE=\\192.168.4.84\D$\abc4.xlsx',sheet1$)
3.出现的错误
1)无法创建链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Ace.OLEDB.12.0" 的实例。
-------------------------------------------------------------------------------------------------
--开启导入功能
exec sp_configure 'show advanced options',1
reconfigure
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure
--允许在进程中使用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
2)尚未注册 OLE DB 访问接口 "Microsoft.Ace.OleDb.12.0"。
安装相关组件。