## Kedy použiť Pri porovnaní práv účtov alebo pri migrácii databázy. ## Ako čítať výsledok Jeden riadok = jedno členstvo. Pozor na `db_owner` a `db_securityadmin`. > [!WARNING] > Rola `public` je implicitná a vo výstupe nie je. Explicitné GRANT / DENY sú v samostatnom recepte. **Oprávnenia:** Viditeľnosť metadát v cieľovej databáze. Spúšťa sa v cieľovej databáze. **Režim:** READ ONLY · **Verzia:** SQL Server 2016 – 2022 ## Súvisiace recepty - [Explicitné GRANT / DENY v databáze](script.php?id=38&s=explicitne-grant-deny-v-databaze)
Skript
Členstvo v databázových rolách
Ktorý používateľ je v ktorej databázovej role (db_owner, db_datareader, vlastné role) v aktuálnej databáze.
Parametre skriptu doplň a kopíruj hotový skript
/* DeadlockCafe | Členstvo v databázových rolách
Účel: Ktorý používateľ je v ktorej databázovej role (db_owner, db_datareader, vlastné role) v aktuálnej databáze.
Režim: READ ONLY | SQL Server 2016 – 2022, on-premises
*/
SET NOCOUNT ON;
SELECT DB_NAME() AS database_name, m.name AS database_user,
m.type_desc AS user_type, r.name AS database_role
FROM sys.database_role_members AS rm
JOIN sys.database_principals AS m ON m.principal_id=rm.member_principal_id
JOIN sys.database_principals AS r ON r.principal_id=rm.role_principal_id
ORDER BY m.name,r.name;