T-SQL - Tipi di dati
Il tipo di dati di SQL Server è un attributo che specifica i tipi di dati di qualsiasi oggetto. Ogni colonna, variabile ed espressione ha un tipo di dati correlato in SQL Server. Questi tipi di dati possono essere utilizzati durante la creazione di tabelle. È possibile scegliere un particolare tipo di dati per una colonna di tabella in base alle proprie esigenze.
SQL Server offre sette categorie, incluse altre categorie di tipi di dati da utilizzare.
Tipi numerici esatti
genere | A partire dal | Per |
---|---|---|
bigint | -9.223.372.036.854.775.808 | 9.223.372.036.854.775.807 |
int | -2.147.483.648 | 2.147.483.647 |
smallint | -32.768 | 32.767 |
tinyint | 0 | 255 |
po | 0 | 1 |
decimale | -10 ^ 38 +1 | 10 ^ 38 –1 |
numerico | -10 ^ 38 +1 | 10 ^ 38 –1 |
i soldi | -922.337.203.685.477.5808 | +922.337.203.685.477.5807 |
smallmoney | -214.748,3648 | +214.748.3647 |
Numerico e decimale sono tipi di dati di precisione e scala fissi e sono funzionalmente equivalenti.
Tipi numerici approssimativi
genere | A partire dal | Per |
---|---|---|
Galleggiante | -1,79 E + 308 | 1,79 E + 308 |
Vero | -3,40E + 38 | 3.40E + 38 |
Tipi di data e ora
genere | A partire dal | Per |
---|---|---|
datetime(Precisione di 3,33 millisecondi) |
1 gennaio 1753 | 31 dicembre 9999 |
smalldatetime(Precisione di 1 minuto) |
1 gennaio 1900 | 6 giugno 2079 |
date(Precisione 1 giorno. Introdotta in SQL Server 2008) |
1 gennaio 0001 | 31 dicembre 9999 |
datetimeoffset(Precisione di 100 nanosecondi. Introdotto in SQL Server 2008) |
1 gennaio 0001 | 31 dicembre 9999 |
datetime2(Precisione di 100 nanosecondi. Introdotto in SQL Server 2008) |
1 gennaio 0001 | 31 dicembre 9999 |
time(Precisione di 100 nanosecondi. Introdotto in SQL Server 2008) |
00: 00: 00.0000000 | 23: 59: 59.9999999 |
Stringhe di caratteri
Suor n | Tipo e descrizione |
---|---|
1 | char Dati di caratteri non Unicode a lunghezza fissa con una lunghezza massima di 8.000 caratteri. |
2 | varchar Dati non Unicode a lunghezza variabile con un massimo di 8.000 caratteri. |
3 | Varchar (max) Dati non Unicode a lunghezza variabile con una lunghezza massima di 231 caratteri (introdotti in SQL Server 2005). |
4 | text Dati non Unicode a lunghezza variabile con una lunghezza massima di 2.147.483.647 caratteri |
Stringhe di caratteri Unicode
Suor n | Tipo e descrizione |
---|---|
1 | nchar Dati Unicode a lunghezza fissa con una lunghezza massima di 4.000 caratteri. |
2 | nvarchar Dati Unicode a lunghezza variabile con una lunghezza massima di 4.000 caratteri. |
3 | Nvarchar (max) Dati Unicode a lunghezza variabile con una lunghezza massima di 2 30 caratteri (introdotti in SQL Server 2005). |
4 | ntext Dati Unicode a lunghezza variabile con una lunghezza massima di 1.073.741.823 caratteri. |
Stringhe binarie
Suor n | Tipo e descrizione |
---|---|
1 | binary Dati binari a lunghezza fissa con una lunghezza massima di 8.000 byte. |
2 | varbinary Dati binari a lunghezza variabile con una lunghezza massima di 8.000 byte. |
3 | varbinary(max) Dati binari a lunghezza variabile con una lunghezza massima di 2 31 byte (introdotti in SQL Server 2005). |
4 | image Dati binari a lunghezza variabile con una lunghezza massima di 2.147.483.647 byte. |
Altri tipi di dati
sql_variant - Memorizza i valori di vari tipi di dati supportati da SQL Server, eccetto text, ntext e timestamp.
timestamp - Memorizza un numero univoco a livello di database che viene aggiornato ogni volta che viene aggiornata una riga.
uniqueidentifier - Memorizza un identificatore univoco globale (GUID).
xml- Memorizza i dati XML. È possibile archiviare istanze XML in una colonna o una variabile (introdotta in SQL Server 2005).
cursor - Un riferimento a un cursore.
table - Memorizza un set di risultati per l'elaborazione successiva.
hierarchyid - Un tipo di dati di sistema di lunghezza variabile utilizzato per rappresentare la posizione in una gerarchia (introdotto in SQL Server 2008).