Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Baza danych SQL w usłudze Microsoft Fabric
Zwraca listę uprawnień do tabel (takich jak INSERT, DELETE, UPDATE, SELECT, REFERENCES) dla określonej tabeli lub tabel.
Transact-SQL konwencje składni
Składnia
sp_table_privileges
[ @table_name = ] N'table_name'
[ , [ @table_owner = ] N'table_owner' ]
[ , [ @table_qualifier = ] N'table_qualifier' ]
[ , [ @fUsePattern = ] fUsePattern ]
[ ; ]
[ @table_name = ] N'table_name'
Tabela służąca do zwracania informacji katalogowych. @table_name to nvarchar(384), bez domyślnego statusu. Obsługiwane jest dopasowanie wzorców dzikich.
[ @table_owner = ] N'table_owner'
Właściciel tabeli służył do zwracania informacji z katalogu.
@table_owner to nvarchar(384), z domyślnym obciążeniem NULL. Obsługiwane jest dopasowanie wzorców dzikich. Jeśli właściciel nie jest określony, domyślne reguły widoczności tabel bazowego DBMS mają zastosowanie.
Jeśli aktualny użytkownik posiada tabelę o podanej nazwie, kolumny tej tabeli są zwracane. Jeśli właściciel nie jest określony, a obecny użytkownik nie posiada tabeli o określonej nazwie, procedura ta szuka tabeli o określonym table_name należącym do właściciela bazy danych. Jeśli taki istnieje, kolumny tej tabeli są zwracane.
[ @table_qualifier = ] N'table_qualifier'
Nazwa kwalifikatora tabeli.
@table_qualifier to nazwa systemu, z domyślnym obciążeniem NULL. Różne produkty DBMS obsługują trójczęściowe nazewnictwo tabel (qualifier.owner.name). W SQL Server ta kolumna oznacza nazwę bazy danych. W niektórych produktach reprezentuje nazwę serwera środowiska bazodanowego tabeli.
[ @fUsePattern = ] fUsePattern
Określa, czy znaki podkreśleń (_), procent (%) i nawiasów ([ lub ]) są interpretowane jako znaki dziki. Poprawne wartości to 0 (dopasowywanie wzorców jest wyłączone) oraz 1 (dopasowanie wzorców jest włączone).
@fUsePattern jest bit, z domyślnym .1
Zwracanie wartości kodu
Żaden.
Zestaw wyników
| Nazwa kolumny | Typ danych | Description |
|---|---|---|
TABLE_QUALIFIER |
sysname | Nazwa kwalifikatora tabeli. W SQL Server ta kolumna oznacza nazwę bazy danych. To ciało może być .NULL |
TABLE_OWNER |
sysname | Nazwisko właściciela stołu. To pole zawsze zwraca wartość. |
TABLE_NAME |
sysname | Nazwa tabeli. To pole zawsze zwraca wartość. |
GRANTOR |
sysname | Nazwa użytkownika bazy danych, która przyznaje uprawnienia do tego TABLE_NAME typu GRANTEE. W SQL Serverze ta kolumna jest zawsze taka sama jak .TABLE_OWNER To pole zawsze zwraca wartość. Ponadto kolumna GRANTOR może być właścicielem bazy danych (TABLE_OWNER) lub użytkownikiem, któremu właściciel bazy danych udzielił pozwolenia, używając klauzuli zawartej WITH GRANT OPTION w GRANT instrukcji. |
GRANTEE |
sysname | Nazwa użytkownika bazy danych, której przyznano uprawnienia do tego TABLE_NAME przez wymienione .GRANTOR W SQL Server ta kolumna zawsze zawiera użytkownika bazy danych z widoku sys.database_principalssystem . To pole zawsze zwraca wartość. |
PRIVILEGE |
sysname | Jedno z dostępnych uprawnień stołu. Uprawnienia do tabel mogą być jedną z następujących wartości (lub innymi wartościami wspieranymi przez źródło danych podczas definiowania implementacji):SELECT
=
GRANTEE może pobierać dane dla jednej lub więcej kolumn.INSERT
=
GRANTEE może dostarczać dane dla nowych wierszy dla jednej lub więcej kolumn.UPDATE
=
GRANTEE może modyfikować istniejące dane dla jednej lub więcej kolumn.DELETE
=
GRANTEE może usuwać wiersze ze stołu.REFERENCES
=
GRANTEE może odnosić się do kolumny w tabeli obcej w zależności klucz główny/klucz obcy. W SQL Server relacje klucza głównego/klucza obcego są definiowane z ograniczeniami tabelowymi.Zakres działań nadanych GRANTEE przez dane przywileje tabeli zależy od źródła danych. Na przykład przywilej może UPDATE pozwalać na GRANTEE aktualizację wszystkich kolumn w tabeli na jednym źródle danych i tylko tych kolumnach, dla których ma UPDATEGRANTOR uprawnienia, na innym źródle danych. |
IS_GRANTABLE |
sysname | Wskazuje, czy ma GRANTEE prawo przyznawać uprawnienia innym użytkownikom (często nazywane uprawnieniami "udzielaj z przyznaniami"). Może to być YES, NOlub NULL. Nieznana (lub NULL) wartość odnosi się do źródła danych, dla którego "grant with grant" nie ma zastosowania. |
Uwagi
Procedura sp_table_privileges przechowywana jest równoważna z procedurą SQLTablePrivileges w ODBC. Wyniki zwracane są uporządkowane według TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, oraz PRIVILEGE.
Permissions
Wymaga SELECT zgody na schemat.
Przykłady
Poniższy przykład zwraca informacje o przywilejach dla wszystkich tabel o nazwach zaczynających się na słowo Contact.
USE AdventureWorks2022;
GO
EXECUTE sp_table_privileges @table_name = 'Contact%';