Condividi tramite


sp_column_privileges_ex (Transact-SQL)

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

Icona di collegamento a un argomentoConvenzioni della 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 cui si desidera restituire le informazioni. table_server è di tipo sysname e non prevede alcun valore predefinito.

  • [ @table_name = ] 'table_name'
    Nome della tabella che include la colonna specificata. table_name è di tipo sysname e il valore predefinito è NULL.

  • [ @table_schema = ] 'table_schema'
    Schema della tabella. table_schema è di tipo sysname e il valore predefinito è NULL.

  • [ @table_catalog = ] 'table_catalog'
    Nome del database contenente la tabella specificata in table_name. table_catalog è di tipo sysname e il valore predefinito è NULL.

  • [ @column_name = ] 'column_name'
    Nome della colonna di cui si desidera ottenere informazioni sui privilegi. column_name è di tipo sysname e il valore predefinito è NULL.

Set di risultati

Nella tabella seguente vengono descritte le colonne dei set di risultati. I risultati restituiti sono ordinati per 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 nomi di tabella composti da tre parti, ovvero qualifier.owner.name. In SQL Server 2008 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 della tabella. Questo campo restituisce sempre un valore.

COLUMN_NAME

sysname

Nome di ogni colonna della tabella TABLE_NAME restituita. Questo campo restituisce sempre un valore.

GRANTOR

sysname

Nome dell'utente del database che ha concesso le autorizzazioni per la colonna COLUMN_NAME all'utente GRANTEE specificato. In SQL Server questa colonna corrisponde sempre a TABLE_OWNER. Questo campo restituisce sempre un valore.

La colonna GRANTOR può rappresentare il proprietario del database (TABLE_OWNER) o un utente a cui il proprietario del database ha concesso le autorizzazioni tramite la clausola WITH GRANT OPTION dell'istruzione GRANT.

GRANTEE

sysname

Nome dell'utente del database a cui l'utente GRANTOR specificato ha concesso le autorizzazioni per la colonna COLUMN_NAME. Questo campo restituisce sempre un valore.

PRIVILEGE

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 = l'utente GRANTEE può recuperare dati per le colonne.

INSERT = l'utente GRANTEE può fornire dati per la colonna specificata quando inserisce nuove righe nella tabella.

UPDATE = l'utente GRANTEE può modificare i dati della colonna.

REFERENCES = l'utente GRANTEE può fare riferimento a una colonna di 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 l'utente GRANTEE può concedere autorizzazioni ad altri utenti (autorizzazione per la concessione di autorizzazioni). 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 AdventureWorks2008R2 nel server collegato Seattle1.

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