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;
 
分类: SQL Server

posted on 2025-04-21 17:12  漫思  阅读(23)  评论(0)    收藏  举报

导航