sp_column_privileges_ex (Transact-SQL)
Gilt für:SQL Server
Gibt Spaltenprivileginformationen für die angegebene Tabelle auf dem angegebenen Verbindungsserver zurück.
Transact-SQL-Syntaxkonventionen
Syntax
sp_column_privileges_ex [ @table_server = ] 'table_server'
[ , [ @table_name = ] 'table_name' ]
[ , [ @table_schema = ] 'table_schema' ]
[ , [ @table_catalog = ] 'table_catalog' ]
[ , [ @column_name = ] 'column_name' ]
Argumente
[ @table_server = ] 'table_server'
Der Name des Verbindungsservers, für den Informationen zurückgegeben werden sollen. table_server ist "sysname" ohne Standardwert.
[ @table_name = ] 'table_name'
Der Name der Tabelle, die die angegebene Spalte enthält. table_name ist sysname mit dem Standardwert NULL.
[ @table_schema = ] 'table_schema'
Das Tabellenschema. table_schema ist sysname mit dem Standardwert NULL.
[ @table_catalog = ] 'table_catalog'
Der Name der Datenbank, in der sich die angegebene table_name befindet. table_catalog ist sysname mit dem Standardwert NULL.
[ @column_name = ] 'column_name'
Der Name der Spalte, für die Berechtigungsinformationen bereitgestellt werden sollen. column_name ist sysname, wobei der Standardwert NULL (alle häufig) ist.
Resultsets
In der folgenden Tabelle sind die Resultsetspalten aufgeführt. Die zurückgegebenen Ergebnisse werden nach TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, COLUMN_NAME und PRIVILEGE sortiert.
Spaltenname | Datentyp | BESCHREIBUNG |
---|---|---|
TABLE_CAT | sysname | Name des Tabellenqualifizierers. Verschiedene DBMS-Produkte unterstützen die dreiteilige Benennung von Tabellen (Qualifizierer.besitzer.Name). In SQL Server stellt diese Spalte den Datenbanknamen dar. Bei anderen Produkten stellt sie den Servernamen der Datenbankumgebung für die Tabelle dar. Dieses Feld kann den Wert NULL annehmen. |
TABLE_SCHEM | sysname | Name des Tabellenbesitzers. In SQL Server stellt diese Spalte den Namen des Datenbankbenutzers dar, der die Tabelle erstellt hat. Dieses Feld gibt immer einen Wert zurück. |
TABLE_NAME | sysname | Tabellenname. Dieses Feld gibt immer einen Wert zurück. |
COLUMN_NAME | sysname | Spaltenname für jede Spalte der zurückgegebenen TABLE_NAME . Dieses Feld gibt immer einen Wert zurück. |
GRANTOR | sysname | Datenbankbenutzername, der Berechtigungen für diese COLUMN_NAME für den aufgeführten GRANTEE erteilt hat. In SQL Server ist diese Spalte immer mit der TABLE_OWNER identisch. Dieses Feld gibt immer einen Wert zurück. Die GRANTOR-Spalte kann entweder der Datenbankbesitzer (TABLE_OWNER) oder eine Person sein, der der Datenbankbesitzer mithilfe der WITH GRANT OPTION-Klausel in der GRANT-Anweisung Berechtigungen erteilt hat. |
GRANTEE | sysname | Datenbankbenutzername, dem berechtigungen für diese COLUMN_NAME vom aufgeführten GRANTOR gewährt wurden. Dieses Feld gibt immer einen Wert zurück. |
PRIVILEG | varchar(32) | Eine der verfügbaren Spaltenberechtigungen. Spaltenberechtigungen können folgende Werte annehmen (oder auch andere Werte, die von der Datenquelle bei der Definition der Implementierung unterstützt werden): SELECT = GRANTEE kann Daten für die Spalten abrufen. INSERT = GRANTEE kann Daten für diese Spalte bereitstellen, wenn neue Zeilen (vom GRANTEE) in die Tabelle eingefügt werden. UPDATE = GRANTEE kann vorhandene Daten in der Spalte ändern. REFERENCES = GRANTEE kann in einer Primärschlüssel-/Fremdschlüsselbeziehung auf eine Spalte in einer Fremdtabelle verweisen. Primär-/Fremdschlüssel-Beziehungen werden über Tabelleneinschränkungen definiert. |
IS_GRANTABLE | varchar(3) | Gibt an, ob der GRANTEE anderen Benutzern Berechtigungen erteilen darf (häufig auch als "Grant with Grant"-Berechtigung bezeichnet). Dieses Feld kann die Werte YES, NO oder NULL annehmen. Ein unbekannter Wert oder NULL-Wert verweist darauf, dass für die entsprechende Datenquelle die "Berechtigung mit Recht zum Erteilen" nicht zutreffend ist. |
Berechtigungen
Erfordert SELECT-Berechtigung für das Schema.
Beispiele
Im folgenden Beispiel werden Spaltenprivileginformationen für die HumanResources.Department
-Tabelle in der AdventureWorks2022
-Datenbank auf dem Verbindungsserver Seattle1
zurückgegeben.
EXEC sp_column_privileges_ex @table_server = 'Seattle1',
@table_name = 'Department',
@table_schema = 'HumanResources',
@table_catalog ='AdventureWorks2022';
Weitere Informationen
sp_table_privileges_ex (Transact-SQL)
Gespeicherte Systemprozeduren (Transact-SQL)
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für