回答

收藏

SQL Server 2008 OPENROWSET权限问题

技术问答 技术问答 505 人阅读 | 0 人回复 | 2023-09-14

我在Windows Server 2008 Enterprise 64位上使用SQL Server 2008 64企业版。SQL Server
; p: T6 T* a% H* r' BManagementStudio在执行以下句子时,我需要sysadmin权限。我正在使用这个句子将数据从Excel导入数据库表。我的问题是,我担心sysadmin是否有解决方案使用较低的特权来实现相同的功能?2 [! B& {. ~7 \2 {1 c7 _
select * from  OPENROWSET('MICROSOFT.ACE.OLEDB.12.0','Excel 12.0;HDR=YES;DATABASE=C:\mytest1.xlsx',sheet1$)                # J" s" `# c% V3 p
    解决方案:                                                                + e/ ^( p( |, I1 A7 K
                                                                从在线书籍OPENROWSET(Transact-SQL)
: J5 J  Q4 t6 _( K1 p( _$ `用户需要ADMINISTER BULK OPERATIONS许可。
% S& T7 r3 u6 ]$ I' h这是入门授予。这是服务器级别的权限,所以是的,它很高。6 y  H/ |$ m* [) ^3 r& M* |/ I
您可以创建一个标准的链接服务器连接,并以以以下方式添加登录名称:
8 J1 a, ]9 t+ q1 nEXEC sp_addlinkedsrvlogin 'LINKSERVERNAME','false localuser','rmtuser','rmtpass'似乎没有必要授予任何特定的权限。因此,如果您设置链接服务器,请使用它linkedsrvlogin设置每个本地用户的通用名称是不明智的。设置特定的本地-" B4 O2 V1 y. t- ~& ?
通过链接服务器(通过rmtuser控制本地用户的访问。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则