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 informacje o uprawnieniach kolumn dla pojedynczej tabeli w bieżącym środowisku.
Transact-SQL konwencje składni
Składnia
sp_column_privileges
[ @table_name = ] N'table_name'
[ , [ @table_owner = ] N'table_owner' ]
[ , [ @table_qualifier = ] N'table_qualifier' ]
[ , [ @column_name = ] N'column_name' ]
[ ; ]
Arguments
[ @table_name = ] N'table_name'
Tabela służąca do zwracania informacji katalogowych. @table_name to sysname, bez domyślnego ustawienia. Nie jest obsługiwane dopasowanie wzorców z dziką kartą.
[ @table_owner = ] N'table_owner'
Właściciel tabeli zwracał informacje z katalogu.
@table_owner to nazwa systemu, z domyślnym .NULL Nie jest obsługiwane dopasowanie wzorców z dziką kartą. Jeśli @table_owner nie jest określona, stosuje się domyślne reguły widoczności tabel w systemie zarządzania bazą danych (DBMS).
Jeśli aktualny użytkownik posiada tabelę o określonej nazwie, kolumny tej tabeli są zwracane. Jeśli @table_owner nie jest określone, a aktualny użytkownik nie posiada tabeli o określonym @table_name, uprawnienia szukają tabeli o określonych @table_name należących do właściciela bazy danych. sp_column 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ą trzyczęś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.
[ @column_name = ] N'column_name'
Pojedyncza kolumna używana, gdy pobierana jest tylko jedna kolumna informacji katalogowych.
@column_name to nvarchar(384), z domyślnym obciążeniem NULL. Jeśli @column_name nie jest określone, wszystkie kolumny są zwracane. W SQL Server @column_name reprezentuje nazwę kolumny podaną w tabeli sys.columns .
@column_name może zawierać znaki dzikie wykorzystujące wzorce dopasowania dzikich kart bazowego DBMS. Dla maksymalnej interoperacyjności, klient bramy powinien przyjmować jedynie dopasowanie wzorców standardowych ISO (znaki % i znaki _ dziki).
Zestaw wyników
sp_column_privileges jest równoważna w SQLColumnPrivileges ODBC. Wyniki zwracane są uporządkowane według TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, COLUMN_NAME, oraz PRIVILEGE.
| Nazwa kolumny | Typ danych | Description |
|---|---|---|
TABLE_QUALIFIER |
sysname | Nazwa kwalifikatora tabeli. 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ść. |
COLUMN_NAME |
sysname | Nazwa kolumny, dla każdej kolumny zwróconej kolumny TABLE_NAME . To pole zawsze zwraca wartość. |
GRANTOR |
sysname | Nazwa użytkownika bazy danych, która otrzymała uprawnienia do tego COLUMN_NAME do wymienionych GRANTEE. W SQL Serverze ta kolumna jest zawsze taka sama jak .TABLE_OWNER To pole zawsze zwraca wartość.Kolumną GRANTOR może być właściciel bazy danych (TABLE_OWNER) lub użytkownik, któremu właściciel przyznał uprawnienia, używając klauzuli zawartej WITH GRANT OPTION w GRANT instrukcji. |
GRANTEE |
sysname | Nazwa użytkownika bazy danych, której przyznano uprawnienia do tego COLUMN_NAME przez wymienione .GRANTOR W SQL Server ta kolumna zawsze zawiera użytkownika bazy danych z tabeli sysusers . To pole zawsze zwraca wartość. |
PRIVILEGE |
varchar(32) | Jedno z dostępnych uprawnień kolumn. Uprawnienia kolumnowe 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 kolumn.INSERT
=
GRANTEE może dostarczać dane dla tej kolumny, gdy nowe wiersze są wstawiane (przez GRANTEE) do tabeli.UPDATE
=
GRANTEE może modyfikować istniejące dane w kolumnie.REFERENCES
=
GRANTEE może odnosić się do kolumny w tabeli obcej w zależności klucz główny/klucz obcy. Relacje klucza pierwotnego/klucza obcego definiuje się przy użyciu ograniczeń tabelowych. |
IS_GRANTABLE |
varchar(3) | Wskazuje, czy ma GRANTEE prawo do przyznawania uprawnień innym użytkownikom (często nazywanych uprawnieniami "grant with grant"). Może to być YES, NOlub NULL. Wartość nieznana, czyli NULL, odnosi się do źródła danych, dla którego "grant with grant" nie ma zastosowania. |
Uwagi
W SQL Server uprawnienia są przyznawane wraz z rozkazem GRANT i odbierane przez samo REVOKE polecenie.
Permissions
Wymaga SELECT zgody na schemat.
Przykłady
Poniższy przykład zwraca informacje o uprawnieniach kolumn dla konkretnej kolumny.
USE AdventureWorks2022;
GO
EXECUTE sp_column_privileges
@table_name = 'Employee',
@table_owner = 'HumanResources',
@table_qualifier = 'AdventureWorks2022',
@column_name = 'SalariedFlag';