我遇到了以下语句因权限问题无法执行并抛出错误的情况:
ALTER DATABASE [{0}] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
我在网上找不到关于它所需权限的任何信息。
我遇到了以下语句因权限问题无法执行并抛出错误的情况:
ALTER DATABASE [{0}] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
我在网上找不到关于它所需权限的任何信息。
需要对数据库具有 ALTER 权限。
一些特定的 SET
权限列在ALTER DATABASE SET options
中:
EMERGENCY
: 要将数据库更改为脱机或应急状态,需要对该数据库具有ALTER DATABASE
权限。要将数据库从脱机状态更改为联机状态,则需要服务器级别的ALTER ANY DATABASE
权限。- DB_CHAINING: 若要设置此选项,则需要对数据库具有
CONTROL SERVER
权限。- TRUSTWORTHY: 若要设置此选项,则需要对数据库具有
CONTROL SERVER
权限。
尝试从管理员账户执行以下操作:
USE [YOUR_DB]
GO
GRANT ALTER TO your_user
GO
但请注意,登录必须在指定的数据库中具有用户。
或者,如果您想在服务器上的每个数据库上授予此权限,则可以在服务器级别向登录授予权限:
USE master
GO
GRANT ALTER ANY DATABASE TO your_login
GO