select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\test\1.xlsx')...[Sheet1$]
如果没有 sysadmin 权限, 会出现这个错误:
已拒绝对 OLE DB 访问接口 'Microsoft.ACE.OLEDB.12.0' 的即席访问。必须通过链接服务器来访问此访问接口。
此时, 可以通过修改注册表来实现(下面是Win10, SQL Server2014的,可类似处理):
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL12.SQLSERVER2014\Providers\Microsoft.ACE.OLEDB.12.0]
DWORD DisallowAdhocAccess 值为0 就可以了