16.3 SQL Server修改角色

SQL Server修改角色

简介

ALTER ROLE可以:

  • 重命名角色
  • 向角色中添加成员
  • 从角色中移除成员

重命名角色语法:

ALTER ROLE role_name
WITH NAME = new_name;

向角色中添加成员语法:

ALTER ROLE role_name
ADD MEMBER database_principal;

此语句中,database_principal数据库用户用户定义的数据库角色。它不能是固定数据库自带角色或服务器主体。

从角色中移除成员语法:

ALTER ROLE role_name
DROP MEMBER database_principal;

示例

1) 重命名角色

将角色production重命名为manufacturing:

ALTER ROLE production
WITH NAME = manufacturing;

2) 向角色中添加成员

先创建一个login账户robert:

CREATE LOGIN robert
WITH PASSWORD = 'Uikbm!#90';

为登录robert创建一个新用户:

CREATE USER robert
FOR LOGIN robert;

第三步,将用户robert添加到manufacturing角色:

ALTER ROLE manufacturing
ADD MEMBER robert;

查询验证用户robert是否是角色manufacturing的成员:

SELECT
r.name role_name,
r.type role_type,
r.type_desc role_type_desc,
m.name member_name,
m.type member_type,
m.type_desc meber_type_desc
FROM sys.database_principals r
INNER JOIN sys.database_role_members rm ON rm.role_principal_id = r.principal_id
INNER JOIN sys.database_principals m ON m.principal_id = rm.member_principal_id
WHERE r.name ='manufacturing';

3) 从角色中移除成员

将用户robert从角色manufacturing中移除:

ALTER ROLE manufacturing
DROP MEMBER robert;
posted @   平元兄  阅读(188)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· DeepSeek “源神”启动!「GitHub 热点速览」
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
点击右上角即可分享
微信分享提示