Tipi di dati (Transact-SQL)
Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics Analytics Platform System (PDW) Warehouse in Microsoft Fabric
In SQL Server motore di database ogni colonna, variabile locale, espressione e parametro ha un tipo di dati correlato. Un tipo di dati è un attributo che specifica il tipo di dati che l'oggetto può contenere, ovvero numeri interi, caratteri, valute, date e ore, stringhe binarie e così via.
SQL Server fornisce un set di tipi di dati di sistema che definiscono tutti i tipi di dati che possono essere usati con SQL Server. È anche possibile definire tipi di dati personalizzati in Transact-SQL o Microsoft .NET Framework. I tipi di dati alias sono basati sui tipi di dati di sistema. Per altre informazioni sui tipi di dati alias, vedere CREATE TYPE. I tipi definiti dall'utente derivano le loro caratteristiche dai metodi e dagli operatori di una classe che viene creata utilizzando uno dei linguaggi di programmazione supportati da .NET Framework.
Quando due espressioni combinate da un operatore hanno tipi di dati, regole di confronto, precisione, scala o lunghezza diversi, le caratteristiche del risultato sono determinate dalle condizioni seguenti:
Il tipo di dati del risultato viene determinato applicando le regole sulla precedenza dei tipi di dati ai tipi di dati delle espressioni di input.
Le regole di confronto del risultato sono determinate dalle regole di precedenza delle regole di confronto quando il tipo di dati del risultato è char, varchar, text, nchar, nvarchar o ntext. Per altre informazioni, si veda Precedenza delle regole di confronto.
La precisione, la scala e la lunghezza del risultato dipendono dalla precisione, dalla scala e dalla lunghezza delle espressioni di input. Per altre informazioni, vedere Precisione, scala e lunghezza (Transact-SQL).
In SQL Server sono disponibili sinonimi dei tipi di dati per la compatibilità con ISO. Per altre informazioni, vedere Tipi di sinonimi dei dati.
Per altre informazioni specifiche sui tipi di dati Apache Spark in Azure Synapse Analytics, vedere Tabelle di tipi di dati in Synapse SQL.
Per informazioni più specifiche sui tipi di dati in Microsoft Fabric, vedere Tipo di dati.
Categorie dei tipi di dati
I tipi di dati SQL Server sono organizzati nelle categorie seguenti:
- Numeri esatti
- Numeri approssimativi
- Data e ora
- Stringhe di caratteri
- Stringhe di caratteri Unicode
- Stringhe binarie
- Altri tipi di dati
In SQL Server, a seconda delle caratteristiche relative all'archiviazione, alcuni tipi di dati appartengono ai gruppi seguenti:
Tipi di dati per valori di grandi dimensioni: varchar(max) e nvarchar(max)
Tipi di dati per oggetti di grandi dimensioni: text, ntext, image, varbinary(max) e xml
Nota
sp_help restituisce
-1
come lunghezza per i tipi di dati xml e per valori di grandi dimensioni.
Dati numerici esatti
1 Il tipo di dati di bit viene utilizzato per l'archiviazione di valori booleani.
2 I tipi di dati decimali e numerici sono identici.
Numerici approssimati
Data e ora
Stringhe di caratteri
Stringhe di testo Unicode
Stringhe binarie
Altri tipi di dati
1 I tipi di dati geography e geometry sono tipi spaziali.