sp_column_privileges_ex (Transact-SQL)

Si applica a:SQL Server

Restituisce i privilegi di una colonna della tabella specificata nel server collegato specificato.

Convenzioni di sintassi Transact-SQL

Sintassi

  
sp_column_privileges_ex [ @table_server = ] 'table_server'   
     [ , [ @table_name = ] 'table_name' ]   
     [ , [ @table_schema = ] 'table_schema' ]   
     [ , [ @table_catalog = ] 'table_catalog' ]   
     [ , [ @column_name = ] 'column_name' ]  

Argomenti

[ @table_server = ] 'table_server' Nome del server collegato per il quale restituire informazioni. table_server è sysname, senza impostazione predefinita.

[ @table_name = ] 'table_name' Nome della tabella contenente la colonna specificata. table_name è sysname, con valore predefinito NULL.

[ @table_schema = ] 'table_schema' Schema della tabella. table_schema è sysname, con valore predefinito NULL.

[ @table_catalog = ] 'table_catalog'Nome del database in cui risiede il table_name specificato. table_catalog è sysname, con valore predefinito NULL.

[ @column_name = ] 'column_name' Nome della colonna per cui fornire informazioni sui privilegi. column_name è sysname, con un valore predefinito NULL (tutti comuni).

Set di risultati

Nella tabella seguente vengono descritte le colonne dei set di risultati. I risultati restituiti vengono ordinati in base a TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, COLUMN_NAME e PRIVILEGE.

Nome colonna Tipo di dati Descrizione
TABLE_CAT sysname Nome del qualificatore della tabella. Vari prodotti DBMS supportano la denominazione in tre parti per le tabelle (qualificatore.proprietario.nome). In SQL Server questa colonna rappresenta il nome del database. In altri prodotti rappresenta il nome del server dell'ambiente di database della tabella. Questo campo può essere NULL.
TABLE_SCHEM sysname Nome del proprietario della tabella. In SQL Server questa colonna rappresenta il nome dell'utente del database che ha creato la tabella. Questo campo restituisce sempre un valore.
TABLE_NAME sysname Nome tabella. Questo campo restituisce sempre un valore.
COLUMN_NAME sysname Nome colonna, per ogni colonna del TABLE_NAME restituito. Questo campo restituisce sempre un valore.
GRANTOR sysname Nome utente del database che ha concesso le autorizzazioni per questo COLUMN_NAME all'utente GRANTEE elencato. In SQL Server questa colonna è sempre la stessa della TABLE_OWNER. Questo campo restituisce sempre un valore.

La colonna GRANTOR può essere il proprietario del database (TABLE_OWNER) o un utente a cui il proprietario del database ha concesso le autorizzazioni usando la clausola WITH GRANT OPTION nell'istruzione GRANT.
BENEFICIARIO sysname Nome utente del database a cui sono state concesse le autorizzazioni per questo COLUMN_NAME dall'oggetto GRANTOR elencato. Questo campo restituisce sempre un valore.
PRIVILEGIO varchar(32) Una delle autorizzazioni di colonna disponibili. Le autorizzazioni di colonna possono essere rappresentate da uno dei valori riportati di seguito o da altri valori supportati dall'origine dei dati in fase di definizione dell'implementazione:

SELECT = GRANTEE può recuperare i dati per le colonne.

INSERT = GRANTEE può fornire dati per questa colonna quando vengono inserite nuove righe (da GRANTEE) nella tabella.

UPDATE = GRANTEE può modificare i dati esistenti nella colonna.

REFERENCES = GRANTEE può fare riferimento a una colonna in una tabella esterna in una relazione chiave primaria/chiave esterna. Questo tipo di relazione viene definito tramite vincoli di tabella.
IS_GRANTABLE varchar(3) Indica se GRANTEE è autorizzato a concedere autorizzazioni ad altri utenti(spesso definito "concessione con concessione"). I possibili valori sono YES, NO e NULL. Un valore sconosciuto, o NULL, corrisponde a un'origine dei dati per la quale questo tipo di assegnazione delle autorizzazioni non è consentito.

Autorizzazioni

È richiesta l'autorizzazione SELECT per lo schema.

Esempi

Nell'esempio seguente vengono restituite informazioni relative ai privilegi di colonna della tabella HumanResources.Department del database AdventureWorks2022 nel server collegato Seattle1.

EXEC sp_column_privileges_ex @table_server = 'Seattle1',   
   @table_name = 'Department',   
   @table_schema = 'HumanResources',  
   @table_catalog ='AdventureWorks2022';  

Vedi anche

sp_table_privileges_ex (Transact-SQL)
Stored procedure di sistema (Transact-SQL)