Condividi tramite


PROPRIETÀ COLONNA (Transact-SQL)

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di AzureDatabase SQL in Microsoft Fabric

Questa funzione restituisce informazioni di colonna o parametro.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

COLUMNPROPERTY ( id , column , property )   

Argomenti

id
Espressione che include l'identificatore (ID) della tabella o procedura.

column
Espressione che include il nome di colonna o di parametro.

property
Per l'argomento id, l'argomento property specifica il tipo di informazioni che verranno restituite dalla funzione COLUMNPROPERTY. I valori possibili per l'argomento property sono i seguenti:

valore Descrizione Valore restituito
AllowsNull Ammette valori Null. 1: VERO

0: FALSO

NULL: input non valido.
ColumnId Valore di ID di colonna corrispondente a sys.columns.column_id. ID colonna

Nota: quando si eseguono query su più colonne, potrebbero apparire spazi vuoti nella sequenza dei valori di ID di colonna.
FullTextTypeColumn L'elemento TYPE COLUMN nella tabella in cui sono contenute le informazioni sui tipi di documenti di column. ID di TYPE COLUMN full-text per l'espressione del nome della colonna passata come secondo parametro della funzione.
GeneratedAlwaysType Valore di colonna generato dal sistema. Corrisponde a sys.columns.generated_always_type Si applica a: SQL Server 2016 (13.x) e versioni successive.

0: non sempre generato

1: sempre generato all'inizio della riga

2: sempre generato alla fine della riga
IsColumnSet La colonna è un set di colonne. Per altre informazioni, vedere Usare set di colonne. 1: VERO

0: FALSO

NULL: input non valido.
IsComputed La colonna è una colonna calcolata. 1: VERO

0: FALSO

NULL: input non valido.
IsCursorType Il parametro di procedura è di tipo CURSOR. 1: VERO

0: FALSO

NULL: input non valido.
IsDeterministic La colonna è tipo deterministico. Questa proprietà viene applicata solo alle colonne calcolate e alle colonne di una vista. 1: VERO

0: FALSO

NULL: input non valido. Non si tratta di una colonna calcolata o di una colonna di vista.
IsFulltextIndexed La colonna è stata registrata per l'indicizzazione full-text. 1: VERO

0: FALSO

NULL: input non valido.
IsHidden Valore di colonna generato dal sistema. Corrisponde a sys.columns.is_hidden Si applica a: SQL Server 2016 (13.x) e versioni successive.

0: non nascosto

1: nascosto
IsIdentity La colonna utilizza la proprietà IDENTITY. 1: VERO

0: FALSO

NULL: input non valido.
IsIdNotForRepl La colonna controlla l'impostazione IDENTITY_INSERT. 1: VERO

0: FALSO

NULL: input non valido.
IsIndexable La colonna può essere indicizzata. 1: VERO

0: FALSO

NULL: input non valido.
IsOutParam Il parametro di procedura è di output. 1: VERO

0: FALSO

NULL: input non valido.
IsPrecise La colonna è precisa. Questa proprietà viene applicata solo a colonne di tipo deterministico. 1: VERO

0: FALSO

NULL: input non valido. Non si tratta di una colonna di tipo deterministico.
IsRowGuidCol La colonna è di tipo di dati uniqueidentifier e viene definita con la proprietà ROWGUIDCOL. 1: VERO

0: FALSO

NULL: input non valido.
IsSparse La colonna è una colonna di tipo sparse. Per altre informazioni, vedere Usare le colonne di tipo sparse. 1: VERO

0: FALSO

NULL: input non valido.
IsSystemVerified Le proprietà di determinismo e precisione della colonna possono essere verificate dal motore di database. Questa proprietà è applicabile solo alle colonne calcolate e alle colonne di viste. 1: VERO

0: FALSO

NULL: input non valido.
IsXmlIndexable La colonna XML può essere utilizzata in un indice XML 1: VERO

0: FALSO

NULL: input non valido.
Precisione Lunghezza del tipo di dati della colonna o del parametro. Lunghezza del tipo di dati specificato per la colonna.

-1: xml o tipi di dati per valori di grandi dimensioni

NULL: input non valido.
Ridimensiona Scala del tipo di dati della colonna o del parametro. Valore di scalabilità

NULL: input non valido.
StatisticalSemantics La colonna è abilitata per l'indicizzazione semantica. 1: VERO

0: FALSO
SystemDataAccess La colonna deriva da una funzione che accede ai dati nei cataloghi di sistema o nelle tabelle virtuali di sistema di SQL Server. Questa proprietà è applicabile solo alle colonne calcolate e alle colonne di viste. 1 TRUE (accesso di sola lettura).

0: FALSO

NULL: input non valido.
UserDataAccess La colonna deriva da una funzione che accede ai dati nelle tabelle utente, incluse le tabelle temporanee e le viste, archiviate nell'istanza locale di SQL Server. Questa proprietà è applicabile solo alle colonne calcolate e alle colonne di viste. 1 TRUE (accesso di sola lettura).

0: FALSO

NULL: input non valido.
UsesAnsiTrim ANSI_PADDING è stato impostato su On al momento della creazione della tabella. Questa proprietà viene applicata solo alle colonne o ai parametri di tipo char o varchar. 1: VERO

0: FALSO

NULL: input non valido.

Tipi restituiti

int

Eccezioni

Restituisce NULL in caso di errore o se un chiamante non ha l'autorizzazione necessaria per visualizzare l'oggetto.

Un utente può visualizzare esclusivamente i metadati delle entità a sicurezza diretta di cui è proprietario o per cui ha ricevuto un'autorizzazione. Di conseguenza, le funzioni predefinite di creazione dei metadati come COLUMNPROPERTY possono restituire NULL se l'utente non ha l'autorizzazione corretta per l'oggetto. Per altre informazioni, vedere Configurazione della visibilità dei metadati.

Osservazioni:

Durante il controllo della proprietà deterministica di una colonna, è necessario per prima cosa verificare se la colonna è calcolata. L'argomento IsDeterministic restituisce NULL per le colonne non calcolate. È possibile specificare le colonne calcolate come colonne di indice.

Esempi

Nell'esempio viene restituita la lunghezza della colonna LastName.

USE AdventureWorks2022;  
GO  
SELECT COLUMNPROPERTY( OBJECT_ID('Person.Person'),'LastName','PRECISION')AS 'Column Length';  
GO  

Il set di risultati è il seguente.

Column Length
-------------
50

Vedi anche

Funzioni per i metadati (Transact-SQL)
TYPEPROPERTY (Transact-SQL)