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控制本地用户的访问。 |
|
|
|
|
|