注意:
1、首先要允许使用ACE及动态参数
2、excel12.0应写为“excel 12.0”
1、查
--允许在进程中使用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
select * from openrowset('Microsoft.ACE.OLEDB.12.0','excel 12.0;hdr=yes;imex=1;Database=d:/excel.xlsx','select * from [sheet1$]')
2、增
insert into openrowset('Microsoft.ACE.OLEDB.12.0','excel 12.0;hdr=yes;imex=1;Database=d:/excel.xlsx','select * from [sheet1$]') values('王宁')
消息 7399,级别 16,状态 1,第 24 行
链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.ACE.OLEDB.12.0" 报错。提供程序指示用户没有执行该操作的权限。
消息 7343,级别 16,状态 2,第 24 行
链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.ACE.OLEDB.12.0" 无法 INSERT INTO 表 "[Microsoft.ACE.OLEDB.12.0]"。
不支持吗?写的是没有权限啊,如何才能有权限呢?