3

有什么方法可以在 SQL Server 2008 R2 中使用 OpenRowSet 和 OpenDataSet 命令而无需拥有 SysAdmin 权限?

我正在尝试从 Excel 文件加载数据,而我们将执行实际加载的服务帐户没有系统管理员权限。

它目前不是链接的“服务器”,文件名可以逐月更改。

这是我的查询:

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

谢谢

4

2 回答 2

3

我有同样的问题并使用此说明解决它http://www.johnsoer.com/blog/?p=538

很快:将双字注册键 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\YOUR_MSSQL_VERSION.YOR_INSTANCE_NAME\Providers\Microsoft.ACE.OLEDB.12.0\DisallowAdhocAccess 添加到 0

于 2013-09-13T13:47:11.757 回答
1

您不一定需要系统管理员权限,只需要ADMINISTER BULK OPERATIONS权限(这是服务器级别的权限,但不完全是系统管理员)。

如果这不是一个选项,您可以尝试设置链接服务器连接并按照本文中的方法进行操作

于 2012-12-18T23:52:40.830 回答