sys.columns (Transact-SQL)

Restituisce una riga per ogni colonna di un oggetto contenente colonne, ad esempio viste o tabelle. Nell'elenco seguente sono inclusi i tipi di oggetti contenenti colonne.

  • Funzioni assembly con valori di tabella (FT)

  • Funzioni SQL inline con valori di tabella (IF)

  • Tabelle interne (IT)

  • Tabelle di sistema (S)

  • Funzioni SQL con valori di tabella (TF)

  • Tabelle utente (U)

  • Viste (V)

Nome colonna

Tipo di dati

Descrizione

object_id

int

ID dell'oggetto a cui appartiene la colonna.

name

sysname

Nome della colonna. Valore univoco all'interno dell'oggetto.

column_id

int

ID della colonna. Valore univoco all'interno dell'oggetto.

È possibile che gli ID di colonna non siano sequenziali.

system_type_id

tinyint

ID del tipo di sistema della colonna.

user_type_id

int

ID del tipo di colonna definito dall'utente.

Per restituire il nome del tipo, eseguire il join alla vista del catalogo sys.types per questa colonna.

max_length

smallint

Lunghezza massima (in byte) della colonna.

-1 = La colonna è di tipo varchar(max), nvarchar(max), varbinary(max) o xml.

Per le colonne di tipo text, il valore max_length sarà 16 o il valore impostato da sp_tableoption 'text in row'.

precision

tinyint

Precisione della colonna se la colonna è di tipo numerico. In caso contrario, 0.

scale

tinyint

Scala della colonna se di tipo numerico, altrimenti 0.

collation_name

sysname

Nome delle regole di confronto della colonna se la colonna è di tipo carattere. In caso contrario, NULL.

is_nullable

bit

1 = La colonna ammette valori Null.

is_ansi_padded

bit

1 = La colonna utilizza l'opzione ANSI_PADDING ON se è di tipo carattere, binary o variant.

0 = La colonna non è di tipo carattere, binary o variant.

is_rowguidcol

bit

1 = La colonna è una parola chiave ROWGUIDCOL dichiarata.

is_identity

bit

1 = la colonna ha valori Identity

is_computed

bit

1 = La colonna è una colonna calcolata.

is_filestream

bit

1 = la colonna è una colonna FILESTREAM.

is_replicated

bit

1 = La colonna viene replicata.

is_non_sql_subscribed

bit

1 = la colonna ha un Sottoscrittore non SQL Server.

is_merge_published

bit

1 = La colonna è inclusa in una pubblicazione di tipo merge.

is_dts_replicated

bit

1 = La colonna viene replicata tramite SSIS.

is_xml_document

bit

1 = Il contenuto è un documento XML completo.

0 = il contenuto è un frammento di documento o la colonna non è di tipo xml.

xml_collection_id

int

Diverso da zero se la colonna è di tipo xml e XML è tipizzato. Il valore sarà l'ID della raccolta che include lo spazio dei nomi dell'XML Schema di convalida della colonna.

0 = Nessuna raccolta di XML Schema.

default_object_id

int

ID dell'oggetto predefinito, indipendentemente dal fatto che sia un oggetto autonomo sys.sp_bindefault o un vincolo DEFAULT inline a livello di colonna. La colonna parent_object_id di un oggetto predefinito inline a livello di colonna è un riferimento alla tabella stessa.

0 = nessun valore predefinito.

rule_object_id

int

ID della regola autonoma associata alla colonna tramite sys.sp_bindrule.

0 = Nessuna regola autonoma. Per i vincoli CHECK a livello di colonna, vedere sys.check_constraints (Transact-SQL).

is_sparse

bit

1 = La colonna è di tipo sparse. Per ulteriori informazioni, vedere Utilizzo di colonne di tipo sparse.

is_column_set

bit

1 = La colonna è un set di colonne. Per ulteriori informazioni, vedere Utilizzo di colonne di tipo sparse.

Autorizzazioni

La visibilità dei metadati nelle viste del catalogo è limitata alle entità a protezione diretta di cui l'utente è proprietario o per le quali dispone di autorizzazioni. Per ulteriori informazioni, vedere Configurazione della visibilità dei metadati.

Vedere anche

Riferimento

Viste di sistema (Transact-SQL)

Viste del catalogo per gli oggetti (Transact-SQL)

Viste del catalogo (Transact-SQL)

sys.all_columns (Transact-SQL)

sys.system_columns (Transact-SQL)

Concetti

Domande frequenti sull'esecuzione di query sul catalogo di sistema di SQL Server