有没有办法在SQL Server2008 R2中使用OpenRowSet和OpenDataSet命令而不必拥有SysAdmin权限?
我正在尝试从Excel文件加载数据,而我们将执行实际加载的服务帐户不能拥有sysadmin权限。
它目前不是一个链接的“服务器”,文件名可以每月更改。
下面是我的问题:
SELECT
Center,
Amount
FROM OPENROWSET(
'Microsoft.ACE.OLEDB.12.0'
,'Excel 8.0;HDR=NO;Database=C:\exceldata.xls'
,'SELECT
F1 as Center,
F2 as Amount
FROM [Sheet1$]')
WHERE Amount > 0
谢谢
发布于 2012-12-19 07:52:41
您不一定需要sysadmin权限,只需要ADMINISTER BULK OPERATIONS
权限(这是服务器级别的权限,但不完全是sysadmin权限)。
如果这不是一个选项,您可以尝试设置链接服务器连接,并遵循this post中的方法。
发布于 2013-09-13 21:47:12
我也有同样的问题,用下面的说明http://www.johnsoer.com/blog/?p=538来解决它
简而言之:将dword注册表键HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\YOUR_MSSQL_VERSION.YOR_INSTANCE_NAME\Providers\Microsoft.ACE.OLEDB.12.0\DisallowAdhocAccess添加到0
https://stackoverflow.com/questions/13943370
复制相似问题