sp_datatype_info (Transact-SQL)

Restituisce informazioni sui tipi di dati supportati nell'ambiente corrente.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

sp_datatype_info [ [ @data_type = ] data_type ] 
     [ , [ @ODBCVer = ] odbc_version ] 

Argomenti

  • [ @data_type= ] data_type
    Numero di codice del tipo di dati specificato. Per ottenere un elenco di tutti i tipi di dati, omettere questo parametro. data_type è di tipo int e il valore predefinito è 0.

  • [ @ODBCVer= ] odbc_version
    Versione di ODBC utilizzata. odbc_version è di tipo tinyint e il valore predefinito è 2.

Valori restituiti

Nessuno

Set di risultati

Nome colonna

Tipo di dati

Descrizione

TYPE_NAME

sysname

Tipo di dati che dipende dal sistema di gestione di database (DBMS).

DATA_TYPE

smallint

Codice per il tipo di dati ODBC a cui vengono mappate tutte le colonne di tale tipo.

PRECISION

int

Precisione massima del tipo di dati nell'origine dati. Per i tipi di dati per cui la precisione non è applicabile, viene restituito NULL. Il valore restituito per la colonna PRECISION è in base 10.

LITERAL_PREFIX

varchar(32)

Carattere o caratteri che precedono il nome di una costante, ad esempio una virgoletta singola (') per i tipi carattere e 0x per i dati binari.

LITERAL_SUFFIX

varchar(32)

Carattere o caratteri che seguono il nome di una costante, ad esempio una virgoletta singola (') per i tipi carattere e nessuna virgoletta per i dati binari.

CREATE_PARAMS

varchar(32)

Descrizione dei parametri di creazione per questo tipo di dati, ad esempio "precision, scale" per decimal, NULL per float e "max_length" per varchar.

NULLABLE

smallint

Specifica se i valori Null sono supportati.

1 = I valori Null sono supportati.

0 = I valori Null non sono supportati.

CASE_SENSITIVE

smallint

Specifica se viene rispettata la distinzione tra maiuscole e minuscole.

1 = In tutte le colonne di questo tipo viene rispettata la distinzione tra maiuscole e minuscole (per le regole di confronto).

0 = In tutte le colonne di questo tipo non viene rispettata la distinzione tra maiuscole e minuscole.

SEARCHABLE

smallint

Specifica la funzionalità di ricerca del tipo di colonna.

1 = Non è possibile eseguire ricerche in questo tipo di colonna.

2 = È possibile eseguire ricerche con LIKE.

3 = È possibile eseguire ricerche con WHERE.

4 = È possibile eseguire ricerche con WHERE o LIKE.

UNSIGNED_ATTRIBUTE

smallint

Specifica se il tipo di dati include o meno il segno.

1 = Tipo di dati senza segno.

0 = Tipo di dati con segno.

MONEY

smallint

Specifica il tipo di dati money.

1 = Tipo di dati money.

0 = Tipo di dati diverso da money.

AUTO_INCREMENT

smallint

Specifica l'incremento automatico.

1 = Incremento automatico abilitato.

0 = Incremento automatico disabilitato.

NULL = Attributo non applicabile.

In un'applicazione è possibile inserire valori in una colonna cui è associato questo attributo, ma non è possibile aggiornare i valori della colonna. Ad eccezione del tipo di dati bit, AUTO_INCREMENT è valido solo per tipi di dati appartenenti alle categorie dei tipi di dati numerici esatti e numerici approssimati.

LOCAL_TYPE_NAME

sysname

Versione localizzata del nome del tipo di dati dipendente dall'origine dati. In francese, ad esempio, DECIMAL è DECIMALE. Se il nome localizzato non è supportato dall'origine dati, viene restituito NULL.

MINIMUM_SCALE

smallint

Scala minima del tipo di dati nell'origine dati. Se a un tipo di dati è associata una scala fissa, le colonne MINIMUM_SCALE e MAXIMUM_SCALE contengono entrambe lo stesso valore. Se la scala non è applicabile, viene restituito NULL.

MAXIMUM_SCALE

smallint

Scala massima del tipo di dati nell'origine dati. Se la scala massima non viene definita separatamente nell'origine dati, ma viene invece definita come corrispondente al valore della precisione massima, questa colonna contiene lo stesso valore della colonna PRECISION.

SQL_DATA_TYPE

smallint

Valore del tipo di dati SQL corrispondente al valore visualizzato nel campo TYPE del descrittore. Questa colonna corrisponde alla colonna DATA_TYPE, ad eccezione che per i tipi di dati datetime e interval ANSI. Questo campo restituisce sempre un valore.

SQL_DATETIME_SUB

smallint

Sottocodice datetime o interval ANSI se il valore di SQL_DATA_TYPE è SQL_DATETIME o SQL_INTERVAL. Per i tipi di dati diversi da datetime e interval ANSI, il valore di questo campo è NULL.

NUM_PREC_RADIX

int

Numero di bit o di cifre per il calcolo del numero massimo che può contenere una colonna. Nel caso di tipi di dati numerici approssimati, questa colonna contiene il valore 2 per indicare diversi bit. Nel caso di tipi di dati numerici esatti, questa colonna contiene il valore 10 per indicare diverse cifre decimali. Negli altri casi la colonna è NULL. L'applicazione può calcolare il numero massimo che è possibile immettere nella colonna tramite la combinazione di precisione e radice.

INTERVAL_PRECISION

smallint

Valore di precisione iniziale dell'intervallo se data_type è interval; in caso contrario, NULL.

USERTYPE

smallint

Valore di usertype ricavato dalla tabella systypes.

Osservazioni

sp_datatype_info corrisponde a SQLGetTypeInfo in ODBC. I risultati restituiti vengono ordinati in base a DATA_TYPE e quindi in base alla precisione del mapping del tipo di dati al tipo di dati SQL ODBC corrispondente.

Autorizzazioni

È richiesta l'appartenenza al ruolo public.

Esempi

Nell'esempio seguente vengono recuperate informazioni per i tipi di dati sysname e nvarchar specificando il valore data_type-9.

USE master;
GO
EXEC sp_datatype_info -9;
GO