Cla*_*ude 2 sql-server-2008 role users
有没有办法区分系统角色/用户和用户定义的角色/用户?作为系统角色/用户,我了解在创建数据库时隐式安装/分配的角色/用户。作为用户定义的角色/用户,我理解之后“手动”创建的角色/用户。
我发现的唯一方法是查看结果
select * from sys.database_principals order by create_date, is_fixed_role desc
Run Code Online (Sandbox Code Playgroud)
或者通过将结果与新创建的数据库进行比较。还有其他方法吗?
sys.database_principals 上的“is_fixed_role”列是您的答案,请查看MS 文档:
如果为 1,则该行代表以下固定数据库角色之一的条目:db_owner、db_accessadmin、db_datareader、db_datawriter、db_ddladmin、db_securityadmin、db_backupoperator、db_denydatareader、db_denydatawriter。
只需使用
SELECT * FROM sys.database_principals WHERE [type]='R' and [is_fixed_role]=1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
415 次 |
| 最近记录: |