Tipi di dati SQL Server

Tipi di dati SQL Server

I tipi di dati sono un concetto fondamentale quando si lavora con i database. In SQL Server, ogni colonna, variabile, espressione o parametro comprende un tipo di dati specifico. Quindi, capire quali tipi di dati, vari tipi di dati e come utilizzarli sono molto importanti come utente SQL Server.

In questa guida completa, imparerai i fondamenti dei tipi di dati in SQL Server e vari scenari puoi usarli.

Requisiti

Per seguire insieme a questa guida e garantire la massima compatibilità, assicurati di avere:

  1. Microsoft SQL Server 2017 e superiore.
  2. MS SQL Server Management Studio.
  3. Database di esempio come database WideWorldImporters.

Cos'è un tipo di dati?

Definiamo un tipo di dati come un attributo che determina il tipo di dati detenuti da un oggetto specifico. In termini semplici, un tipo di dati impone quale tipo di valore manterrà l'oggetto. Ad esempio, se impostiamo il tipo di dati di una colonna specifica su un numero intero, gli unici valori memorizzati nella colonna sono di tipo intero.

SQL Server fornisce vari tipi di dati, come discusso in questa guida.

Categorie del tipo di dati SQL Server

Possiamo classificare i tipi di dati SQL Server in varie categorie principali come:

  1. Tipi numerici esatti
  2. Tipi numerici approssimativi
  3. Tipi di dati di data e ora
  4. Stringhe di personaggi
  5. Stringhe binarie
  6. Stringhe di caratteri Unicode
  7. Altri tipi di dati

Vediamo ogni categoria e descriviamo vari tipi di dati.

Tipi numerici esatti

Come suggerisce il nome, gli esatti tipi numerici archiviano valori numerici esatti, come numeri interi, decimali e valori monetari. Ogni tipo numerico contiene un valore minimo e massimo che può archiviare. I piccoli tipi di dati sono utili quando è necessario conservare la memoria, mentre i tipi di dati di grandi dimensioni sono utili per memorizzare valori di grandi dimensioni a spese per la memoria.

La tabella seguente mostra i tipi di dati numerici esatti e i loro valori Min, Max e Archiviazione.

Tipo Min Max Magazzinaggio
Int -2147483648 2147483647 4 byte
Bigint -92233372036854775808 9223372036854775807 8 byte
Morso 0 1 1 byte
Decimale −10^38+1 0^381−1 Dipende dalla precisione

1 - 9 (5 byte)

10 - 19 (9 byte)

20 - 28 (13 byte)

29 - 38 (17 byte)

Soldi -922337203685477.5808 922337203685477.5807 8 byte
Numerico −10^38+1 10^381−1 A seconda della precisione, 5-17 byte
Piccolo -32768 32767 2 byte
Piccolomoney - 214748.3648 214748.3647 4 byte
Tinyint 0 255 2 byte

È una decisione eccellente pensare al tipo migliore, a seconda delle tue esigenze.

Tipi numerici approssimativi

I tipi approssimativi vengono utilizzati per archiviare i valori mobili. Si trovano comunemente in ambienti critici di precisione come i calcoli scientifici.

La tabella seguente mostra i tipi e le loro dimensioni Min, Max e Storage.

Tipo Min Max Magazzinaggio
Float (n) - 1.79E+308 1.79E+308 Essere soggetto a valore su n
vero −3.40e+38 3.40e+38 4 byte

Tipi di dati di data e ora

I tipi di dati di data e ora vengono utilizzati fino ad oggi e ora.

Tipo Min Max Magazzinaggio
data 0001-01-01 9999-12-31 3 byte
DateTime2 0001-01-01 9999-12-31 6 byte
Appuntamento 1753-01-01 9999-12-31 8 byte
tempo 00:00:00.0000000 23:59:59.9999999 5 byte
piccolodatetime 1900-01-01 2079-06-06 4 byte
DateTimeOffset 0001-01-01 9999-12-31 10 byte

Tipi di stringa di caratteri

I tipi di stringa di caratteri vengono utilizzati per archiviare caratteri a lunghezza fissa o a lunghezza variabile.

Tipo Min Max Magazzinaggio
Char (N) 0 Chars 8000 Chars N byte
Varchar 0 Chars 8000 Chars N + 2 byte
Varchar (max) 0 Chars 2^31 Chars N + 2 byte
testo 0 Chars 2147483647 Chars N + 4 byte

Tipi di stringhe binarie

Utilizzato per archiviare i tipi di data binaria di lunghezza fissa e variabile.

Tipo Min Max Magazzinaggio
binario 0 byte 8000 byte N byte
Varbinary 0 byte 8000 byte Durata dei dati + 2 byte
Immagine 0 byte 2147483647 byte

Il tipo di dati dell'immagine è deprecato in alcune versioni di SQL Server.

Stringhe di caratteri Unicode

Memorizza i dati Unicode a lunghezza fissa o variabile.

Tipo Min Max Magazzinaggio
nchar 0 Chars 4000 caratteri 2 * n byte
nvarchar 0 Chars 4000 caratteri 2 * n byte
ntext 0 Chars 1073741823 Chars 2 * Str lunghezza

Altri tipi di dati

SQL Server fornisce altri tipi di dati per casi d'uso specifici. Esempi inclusi:

  1. Cursore - Utilizzato per archiviare le variabili utilizzate in un riferimento al cursore.
  2. XML - Utilizzato per contenere i dati XML
  3. Identificativo unico - Stores a 16 byte Guid Value

Puoi saperne di più su altri tipi di dati nella risorsa fornita.

Chiusura

Questa guida ti ha insegnato le basi dei tipi di dati SQL Server, i loro valori minimi, massimi e di archiviazione. Utilizzare queste informazioni per determinare il miglior tipo di dati per le esigenze del database.