Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да скриптирате ролята на база данни на SQL сървър?

Можете да получите това, от което се нуждаете, със скрипт като този:

declare @RoleName varchar(50) = 'RoleName'

declare @Script varchar(max) = 'CREATE ROLE ' + @RoleName + char(13)
select @script = @script + 'GRANT ' + prm.permission_name + ' ON ' + OBJECT_NAME(major_id) + ' TO ' + rol.name + char(13) COLLATE Latin1_General_CI_AS 
from sys.database_permissions prm
    join sys.database_principals rol on
        prm.grantee_principal_id = rol.principal_id
where rol.name = @RoleName

print @script


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да върнете списък с тригерни събития в SQL Server

  2. Sql като RegEx

  3. Използваната версия на SQL Server не поддържа тип данни datetime2?

  4. Запитване до различна таблица въз основа на параметър

  5. Стойността на колоната за идентичност изведнъж скача до 1001 в sql сървъра