sp_addrole (Transact-SQL)
is_name_condition
Important Note: |
---|
sp_addrole is included for compatibility with earlier versions of Microsoft SQL Server and may not be supported in a future release.Użycie TWORZENIE ROLI zamiast niego. |
sp_addrole [ @rolename = ] 'role' [ , [ @ownername = ] 'owner' ]
Argumenty
[ @rolename = ] 'role'
Is the name of the new database role.role is a sysname, with no default.role must be a valid identifier (ID) and must not already exist in the current database.[ @ownername =] 'owner'
Is the owner of the new database role.owner is a sysname, with a default of the current executing user.owner must be a database user or database role in the current database.
Wartości kodów powrotnych
0 (sukces) lub 1 (brak)
Remarks
Nazwy SQL Server role bazy danych może zawierać od 1 do 128 znaków, łącznie z liter, symboli i liczb. The names of database roles cannot :contain a backslash character (\), be NULL, or an empty ciąg ('').
Po dodaniu rola bazy danych, należy użyć sp_addrolemember (języka Transact-SQL) Aby dodać głównych do roli. Po instrukcji GRANT, DENY i REVOKE służą do stosowania uprawnień do ról bazy danych członków rola bazy danych dziedziczą te uprawnienia, jeśli uprawnienia zostały zastosowane bezpośrednio do ich własnych kont.
Uwaga
Nie można utworzyć nowe role serwera.Role mogą być tworzone tylko poziom bazy danych.
sp_addrole nie mogą być używane wewnątrz transakcji zdefiniowanej przez użytkownika.
Uprawnienia
Podczas rozwiązywania problemów z zarządzania opartego na zasadach, kwerendy widoku syspolicy_conditions pozwala określić, kto utworzony lub ostatniej zmiany stanu.Tworzenie schematu, wymaga CREATE SCHEMA w bazie danych.Jeśli owner jest określony jako użytkownika lub grupy, wymaga PERSONIFIKACJI na użytkownika lub grupę. Jeśli owner jest określony jako rola, wymaga ALTER uprawnień danej roli lub jest członkiem tej roli. Jeśli właścicielem jest określony jako rola aplikacji, wymaga ALTER uprawnienie do tej rola aplikacji.
Przykłady
W następującym przykładzie dodano nową rolę, o nazwie Managers w bieżącej bazie danych.
EXEC sp_addrole 'Managers'