将角色ProgramerRole授予quanxian_demo用户,并验证该用户的权限是否正确;
时间: 2024-12-13 09:18:03 浏览: 9
在SQL Server中,你可以使用`GRANT`语句将`ProgrammerRole`服务器角色授予用户`quanxian_demo`。以下是具体的步骤:
```sql
-- 首先,假设ProgrammerRole已经存在,如果不存在需要创建
-- 如果ProgrammerRole不存在,可以使用如下命令创建:
-- CREATE ROLE [ProgrammerRole];
-- 授予角色给用户
GRANT [ProgrammerRole] TO [quanxian_demo];
-- 确认授权
SELECT
whoami() AS 'Current User',
membership_principal_id,
member_principal_name,
role_principal_id,
role_principal_name
FROM
sys.database_role_members
WHERE
member_principal_id = (
SELECT
principal_id
FROM
sys.server_principals
WHERE
name = N'quanxian_demo'
);
-- 或者直接检查用户是否有特定的权限,比如SELECT权限
EXEC sp_help 'permissions' WITH OWNER=N'sysadmin', PERMISSION=N'SELECT', MEMBER=N'quanxian_demo';
-- 根据返回结果判断权限是否授予成功
```
请注意,`whoami()`函数返回当前登录的用户,`membership_principal_id`是成员ID,`member_principal_name`是成员用户名,`role_principal_id`是角色ID,`role_principal_name`是角色名称。
阅读全文