sp_datatype_info (Transact-SQL)
Restituisce informazioni sui tipi di dati supportati nell'ambiente corrente.
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