Tipi di dati di SQL Server con esempi
Cos'รจ il tipo di dati?
A Tipo di dati in SQL Server รจ definito come il tipo di dati che qualsiasi colonna o variabile puรฒ archiviare. ร un tipo di dati che un oggetto contiene come numeri interi, caratteri, stringhe, ecc. Durante la creazione di qualsiasi tabella o variabile, oltre a specificare il nome, imposti anche il tipo di dati che memorizzerร .
Come utilizzare il tipo di dati MS SQL
- ร necessario definire in anticipo il tipo di dati che una colonna o una variabile puรฒ memorizzare. La determinazione del tipo di dati impedisce inoltre all'utente di inserire dati imprevisti o non validi.
- ร possibile utilizzare in modo efficiente la memoria assegnando un tipo di dati appropriato alla variabile o alla colonna che allocherร solo la quantitร richiesta di memoria di sistema per i dati della rispettiva colonna.
- MS SQL offre un'ampia categoria di tipi di dati di base in SQL in base alle esigenze dell'utente come data, immagini binarie, ecc.
Perchรฉ utilizzare i tipi di dati?
Prendiamo un esempio di semplice Pagina di iscrizione dell'applicazione del sito web. Tre campi di input sono Nome, Cognome e Numero di contatto.
Qui dobbiamo notare che in tempo reale:
- โNome/Cognomeโ sarร sempre alfabetico.
- "Contatto" sarร sempre numerico.

- Dall'immagine sopra vale la pena definirlo โNome/Cognomeโ come carattere and "Contatto" come numero intero.
ร evidente che in qualsiasi applicazione tutti i campi hanno l'uno o l'altro tipo di dati. Ad esempio, numerico, alfabetico, data e molti altri.
Inoltre, tieni presente che tipi di dati diversi hanno requisiti di memoria diversi. Pertanto, ha piรน senso definire la colonna o variabile con il tipo di dati che manterrร per un uso efficiente della memoria.
Tipo di dati disponibile in MS SQL Server
Ecco l'elenco dei tipi di dati del server MS SQL:
MS SQL Server supporta le seguenti categorie di tipo di dati:
- Numerico esatto
- Numerico approssimativo
- Data e ora
- Stringhe di caratteri
- Stringhe di caratteri Unicode
- Stringhe binarie
- Altri tipi di dati
Tipi di dati numerici esatti in SQL
Il numero esatto ha nove tipi di sottotipi di dati nel server SQL.
Tipi di dati numerici esatti
| Tipo di dati | Descrizione | Limite inferiore | Limite superiore | Memorie |
|---|---|---|---|---|
| grande | Memorizza numeri interi nell'intervallo indicato | โ2^63 (โ9,223,372, 036,854,775,808) | 2^63โ1 (โ9,223,372, 036,854,775,807) | 8 byte |
| int | Memorizza numeri interi nell'intervallo indicato | โ2^31 (โ2,147, 483,648) | 2^31โ1 (โ2,147, 483,647) | 4 byte |
| piccolo | Memorizza numeri interi nell'intervallo indicato | โ2^15 (โ32,767) | 2 ^ 15 (-32,768) | 2 byte |
| minuscolo | Memorizza numeri interi nell'intervallo indicato | 0 | 255 | 1 byte |
| bit | Puรฒ assumere valori 0, 1 o NULL. | 0 | 1 | Colonna da 1 byte/8 bit |
| decimale | Utilizzato per numeri in scala e precisione fissa | โ10^38+1 | 10^381โ1 | Da 5 a 17 byte |
| numerico | Utilizzato per numeri in scala e precisione fissa | โ10^38+1 | 10^381โ1 | Da 5 a 17 byte |
| soldi | Dati monetari utilizzati | -922,337, 203, 685,477.5808 | +922,337, 203, 685,477.5807 | 8 byte |
| smallmoney | Dati monetari utilizzati | -214,478.3648 | +214,478.3647 | 4 byte |
Tipi di dati numerici esatti in Server SQL con esempi:
Query:
DECLARE @Datatype_Int INT = 2 PRINT @Datatype_Int
Uscita
2
Sintassi
Decimale (P,S)
Qui,
- P รจ precisione
- S รจ la scala
Query:
DECLARE @Datatype_Decimal DECIMAL (3,2) = 2.31 PRINT @Datatype_Decimal
Uscita
2.31
Tipi di dati numerici approssimativi in โโSQL
SQL La categoria Numerica approssimativa include valori in virgola mobile e reali. Questi tipi di dati in SQL vengono utilizzati principalmente nei calcoli scientifici.
Tipo di dati numerici approssimativi
| Tipo di dati | Descrizione | Limite inferiore | Limite superiore | Memorie | Precisione |
|---|---|---|---|---|---|
| galleggiante(n) | Utilizzato per un numero con precisione mobile | โ1.79E+308 | 1.79 308 + | Dipende dal valore di n | 7 Digit |
| di rose | Utilizzato per un numero con precisione mobile | โ3.40E+38 | 3.40 38 + | 4 byte | 15 Digit |
Syntax: FLOAT [(n)]
Qui, n รจ il numero di bit utilizzati per memorizzare la mantissa di galleggiante numero in notazione scientifica. Per impostazione predefinita, il valore di n รจ 53.
Quando l'utente definisce un tipo di dati come float, n dovrebbe essere un valore compreso tra 1 e 53.
Tratta di SQL Server n come uno dei due possibili valori. Se 1<=n<=24, n viene trattato come 24. Se 25<=n<=53, n viene trattato come 53.
Interrogazione di esempio:
DECLARE @Datatype_Float FLOAT(24) = 22.1234 PRINT @Datatype_Float
Uscita
22.1234
Tipi di dati di data e ora in SQL
Memorizza dati di tipo Data e ora.
Tipo di dati data e ora
| Tipo di dati | Descrizione | Dimensioni di archiviazione | Precisione | Gamma inferiore | Gamma superiore |
|---|---|---|---|---|---|
| Appuntamento | Utilizzato per specificare una data e un'ora dal 1 gennaio 1753 al 31 dicembre 9999. Ha una precisione di 3.33 millisecondi. | 8 byte | Arrotondato a incrementi di .000, .003, .007 | 1753-01-01 | 9999-12-31 |
| smalldatetime | Utilizzato per specificare una data e un'ora dal 1 gennaio 0001 al 31 dicembre 9999. Ha una precisione di 100 nanosecondi | 4 byte, fissi | minuti 1 | 1900-01-01 | 2079-06-06 |
| quando | Utilizzato per memorizzare solo la data dal 1 gennaio 0001 al 31 dicembre 9999 | 3 byte, fissi | 1 giorno | 0001-01-01 | 9999-12-31 |
| tempo | Utilizzato per memorizzare solo valori di solo tempo con una precisione di 100 nanosecondi. | 5 byte | 100 nanosecondi | 00:00:00.0000000 | 23:59:59.9999999 |
| datatimeoffset | Simile a datatime ma con una differenza di fuso orario | 10 byte | 100 nanosecondi | 0001-01-01 | 9999-12-31 |
| data e ora2 | Utilizzato per specificare una data e un'ora dal 1 gennaio 0001 al 31 dicembre 9999 | 6 byte | 100 nanosecondi | 0001-01-01 | 9999-12-31 |
Domanda di esempio:
DECLARE @Datatype_Date DATE = '2030-01-01' PRINT @Datatype_Date
Uscita
'2030-01-01'
Tipi di dati delle stringhe di caratteri in SQL
Questa categoria รจ correlata a un tipo di carattere. Consente all'utente di definire il tipo di dati del carattere che puรฒ essere di lunghezza fissa e variabile. Ha quattro tipi di tipi di dati. Di seguito sono riportati i tipi di dati del server SQL con stringhe di caratteri con esempi.
Tipi di dati delle stringhe di caratteri
| Tipo di dati | Descrizione | Limite inferiore | Limite superiore | Memorie |
|---|---|---|---|---|
| serbatoio | ร una stringa di caratteri con larghezza fissa. Memorizza un massimo di 8,000 caratteri. | 0 caratteri | 8000 caratteri | n byte |
| varchar | Questa รจ una stringa di caratteri con larghezza variabile | 0 caratteri | 8000 caratteri | n byte + 2 byte |
| varchar (massimo) | Questa รจ una stringa di caratteri con larghezza variabile. Memorizza un massimo di 1,073,741,824 caratteri. | 0 caratteri | 2^31 caratteri | n byte + 2 byte |
| testo | Questa รจ una stringa di caratteri con larghezza variabile. Memorizza un massimo di 2 GB di dati di testo. | 0 caratteri | 2,147,483,647 caratteri | n byte + 4 byte |
Domanda di esempio:
DECLARE @Datatype_Char VARCHAR(30) = 'This is Character Datatype' PRINT @Datatype_Char
Uscita
Questo รจ il tipo di dati carattere
Tipi di dati delle stringhe di caratteri Unicode in SQL
Questa categoria memorizza l'intera gamma di caratteri Unicode che utilizza la codifica dei caratteri UTF-16.
Tipi di dati di stringhe di caratteri Unicode
| Tipo di dati | Descrizione | Limite inferiore | Limite superiore | Memorie |
|---|---|---|---|---|
| nchar | ร una stringa Unicode di larghezza fissa | 0 caratteri | 4000 caratteri | 2 volte n byte |
| nvarchar | ร una stringa Unicode di larghezza variabile | 0 caratteri | 4000 caratteri | 2 volte n byte + 2 byte |
| ntext | ร una stringa Unicode di larghezza variabile | 0 caratteri | 1,073,741,823 caratteri | 2 volte la lunghezza della corda |
Interrogazione di esempio:
DECLARE @Datatype_nChar VARCHAR(30) = 'This is nCharacter Datatype' PRINT @Datatype_nChar
Uscita
Questo รจ il tipo di dati nCharacter
Tipi di dati di stringa binaria in SQL
Questa categoria contiene una stringa binaria di lunghezza fissa e variabile.
Tipi di dati di stringa binaria
| Tipo di dati | Descrizione | Limite inferiore | Limite superiore | Memorie |
|---|---|---|---|---|
| binario | ร una stringa binaria a larghezza fissa. Memorizza un massimo di 8,000 byte. | 0 byte | 8000 byte | n byte |
| varbinary | Questa รจ una stringa binaria di larghezza variabile. Memorizza un massimo di 8,000 byte | 0 byte | 8000 byte | La lunghezza effettiva dei dati immessi + 2 byte |
| Immagine | Questa รจ una stringa binaria di larghezza variabile. Memorizza un massimo di 2 GB. | 0 byte | 2,147,483,647 byte |
Interrogazione di esempio:
DECLARE @Datatype_Binary BINARY(2) = 12; PRINT @Datatype_Binary
Uscita
0x000C
Altri tipi di dati in SQL
Questi sono altri diversi tipi di dati del server SQL con la descrizione seguente:
| Tipo di dati | Descrizione |
|---|---|
| Cursore | Il suo output รจ una colonna di sp_cursor_list and sp_describe_cursor. Restituisce il nome della variabile cursore. |
| Versione in fila | La versione stampa le righe della tabella. |
| Gerarchia | Questo tipo di dati rappresenta una posizione nella gerarchia |
| Identificativo unico | Conversione da un'espressione di carattere. |
| SQL_variante | Memorizza i valori dei tipi di dati supportati dal server SQL. |
| XML | Memorizza i dati XML in una colonna. |
| Tipo di geometria spaziale | Rappresenta i dati in un sistema di coordinate piatte. |
| Tipo di geografia spaziale | Rappresenta i dati nel sistema di coordinate della Terra Rotonda. |
| tavolo | Memorizza un set di risultati per un'elaborazione successiva. |
Fatti interessanti!
- Tipo di dati CHAR รจ piรน veloce del tipo di dati SQL VARCHAR durante il recupero dei dati.
Sintesi
- Ogni colonna nelle tabelle definisce il suo tipo di dati durante la creazione della tabella.
- Ci sono sei categorie principali e un'altra categoria miscellanea. Le altre miscellanee hanno nove sottocategorie di Server SQL tipi e dimensioni di dati disponibili.
