logo

Tipi di dati SQL

I tipi di dati vengono utilizzati per rappresentare la natura dei dati che possono essere archiviati nella tabella del database. Ad esempio, in una particolare colonna di una tabella, se vogliamo memorizzare un tipo di dati stringa, dovremo dichiarare un tipo di dati stringa di questa colonna.

Tipi di dati classificati principalmente in tre categorie per ogni database.

  • Stringa Tipi di dati
  • Tipi di dati numerici
  • Data e ora Tipi di dati

Tipi di dati nei database MySQL, SQL Server e Oracle

Tipi di dati MySQL

Un elenco di tipi di dati utilizzati nel database MySQL. Questo è basato su MySQL 8.0.

Tipi di dati stringa MySQL

alfabeto come numeri
CAR(Dimensione) Viene utilizzato per specificare una stringa di lunghezza fissa che può contenere numeri, lettere e caratteri speciali. La sua dimensione può essere compresa tra 0 e 255 caratteri. L'impostazione predefinita è 1.
VARCHAR(dimensione) Viene utilizzato per specificare una stringa di lunghezza variabile che può contenere numeri, lettere e caratteri speciali. La sua dimensione può variare da 0 a 65535 caratteri.
BINARIO(dimensione) È uguale a CHAR() ma memorizza stringhe di byte binarie. Il suo parametro size specifica la lunghezza della colonna in byte. L'impostazione predefinita è 1.
VARBINARIO(Dimensione) È uguale a VARCHAR() ma memorizza stringhe di byte binarie. Il relativo parametro size specifica la lunghezza massima della colonna in byte.
Dimensione del testo) Contiene una stringa che può contenere una lunghezza massima di 255 caratteri.
PICCOLO TESTO Contiene una stringa con una lunghezza massima di 255 caratteri.
MEDIO TESTO Contiene una stringa con una lunghezza massima di 16.777.215.
TESTO LUNGO Contiene una stringa con una lunghezza massima di 4.294.967.295 caratteri.
ENUM(val1, val2, val3,...) Viene utilizzato quando un oggetto stringa ha un solo valore, scelto da un elenco di valori possibili. Contiene 65535 valori in un elenco ENUM. Se si inserisce un valore che non è presente nell'elenco, verrà inserito un valore vuoto.
SET( val1,val2,val3,....) Viene utilizzato per specificare una stringa che può avere 0 o più valori, scelti da un elenco di valori possibili. È possibile elencare fino a 64 valori contemporaneamente in un elenco SET.
BLOB(dimensione) Viene utilizzato per BLOB (Binary Large Objects). Può contenere fino a 65.535 byte.

Tipi di dati numerici MySQL

BIT(dimensione) Viene utilizzato per un tipo valore bit. Il numero di bit per valore è specificato nella dimensione. La sua dimensione può essere compresa tra 1 e 64. Il valore predefinito è 1.
INT(dimensione) Viene utilizzato per il valore intero. Il suo intervallo con segno varia da -2147483648 a 2147483647 e l'intervallo senza segno varia da 0 a 4294967295. Il parametro size specifica la larghezza massima di visualizzazione che è 255.
INTERO(dimensione) È uguale a INT(dimensione).
FLOAT(dimensione, d) Viene utilizzato per specificare un numero in virgola mobile. Il suo parametro size specifica il numero totale di cifre. Il numero di cifre dopo il punto decimale è specificato da D parametro.
GALLEGGIANTE(p) Viene utilizzato per specificare un numero in virgola mobile. MySQL ha utilizzato il parametro p per determinare se utilizzare FLOAT o DOUBLE. Se p è compreso tra 0 e 24, il tipo di dati diventa FLOAT (). Se p è compreso tra 25 e 53, il tipo di dati diventa DOUBLE().
DOPPIO(dimensione, d) È un numero in virgola mobile di dimensioni normali. Il suo parametro size specifica il numero totale di cifre. Il numero di cifre dopo il decimale è specificato dal parametro d.
DECIMALE(dimensione, d) Viene utilizzato per specificare un numero a virgola fissa. Il suo parametro size specifica il numero totale di cifre. Il numero di cifre dopo il parametro decimale specificato da D parametro. Il valore massimo per la dimensione è 65 e il valore predefinito è 10. Il valore massimo per D è 30 e il valore predefinito è 0.
DEC(dimensione, d) È uguale a DECIMAL(dimensione, d).
BOOL Viene utilizzato per specificare i valori booleani true e false. Lo zero è considerato falso e i valori diversi da zero sono considerati veri.

Tipi di dati di data e ora MySQL

DATA Viene utilizzato per specificare il formato della data AAAA-MM-GG. L'intervallo supportato va da '1000-01-01' a '9999-12-31'.
DATAORA(fsp) Viene utilizzato per specificare la combinazione di data e ora. Il suo formato è AAAA-MM-GG hh:mm:ss. L'intervallo supportato va da '1000-01-01 00:00:00' a 9999-12-31 23:59:59'.
TIMESTAMP(fsp) Viene utilizzato per specificare il timestamp. Il suo valore è memorizzato come il numero di secondi trascorsi dall'epoca Unix ('1970-01-01 00:00:00' UTC). Il suo formato è AAAA-MM-GG hh:mm:ss. L'intervallo supportato va da '1970-01-01 00:00:01' UTC a '2038-01-09 03:14:07' UTC.
TEMPO(fsp) Viene utilizzato per specificare il formato dell'ora. Il suo formato è hh:mm:ss. L'intervallo supportato va da '-838:59:59' a '838:59:59'
ANNO Viene utilizzato per specificare un anno nel formato a quattro cifre. Valori consentiti nel formato a quattro cifre da 1901 a 2155 e 0000.

Tipi di dati di SQL Server

Tipo di dati stringa di SQL Server

carattere(n) È un tipo di dati di tipo stringa di caratteri a larghezza fissa. La sua dimensione può arrivare fino a 8000 caratteri.
varchar(n) È un tipo di dati di tipo stringa di caratteri a larghezza variabile. La sua dimensione può arrivare fino a 8000 caratteri.
varchar(massimo) Si tratta di tipi di dati di stringhe di caratteri a larghezza variabile. La sua dimensione può contenere fino a 1.073.741.824 caratteri.
testo È un tipo di dati di tipo stringa di caratteri a larghezza variabile. La sua dimensione può arrivare fino a 2 GB di dati di testo.
nchar È un tipo di dati stringa Unicode a larghezza fissa. La sua dimensione può arrivare fino a 4000 caratteri.
nvarchar È un tipo di dati stringa Unicode a larghezza variabile. La sua dimensione può arrivare fino a 4000 caratteri.
ntesto È un tipo di dati stringa Unicode a larghezza variabile. La sua dimensione può arrivare fino a 2 GB di dati di testo.
binario(n) È un tipo di dati di stringa binaria a larghezza fissa. La sua dimensione può arrivare fino a 8000 byte.
varbinary È un tipo di dati di stringa binaria a larghezza variabile. La sua dimensione può arrivare fino a 8000 byte.
Immagine È anche un tipo di dati di stringa binaria a larghezza variabile. La sua dimensione può arrivare fino a 2 GB.

Tipi di dati numerici di SQL Server

morso È un numero intero che può essere 0, 1 o null.
tinyint Permette numeri interi da 0 a 255.
Smallint Consente numeri interi compresi tra -32.768 e 32.767.
interno Consente numeri interi compresi tra -2.147.483.648 e 2.147.483.647.
bigint Consente numeri interi compresi tra -9.223.372.036.854.775.808 e 9.223.372.036.854.775.807.
galleggiante(n) Viene utilizzato per specificare dati numerici con precisione mobile da -1,79E+308 a 1,79E+308. Il parametro n indica se il campo deve contenere 4 o 8 byte. Il valore predefinito di n è 53.
vero Si tratta di dati numerici con precisione mobile da -3.40E+38 a 3.40E+38.
soldi Viene utilizzato per specificare i dati monetari da -922.337.233.685.477.5808 a 922.337.203.685.477.5807.

Tipo di dati di data e ora di SQL Server

appuntamento Viene utilizzato per specificare la combinazione di data e ora. Supporta l'intervallo dal 1 gennaio 1753 al 31 dicembre 9999 con una precisione di 3,33 millisecondi.
dataora2 Viene utilizzato per specificare la combinazione di data e ora. Supporta l'intervallo dal 1 gennaio 0001 al 31 dicembre 9999 con una precisione di 100 nanosecondi
data Viene utilizzato solo per memorizzare la data. Supporta l'intervallo dal 1 gennaio 0001 al 31 dicembre 9999
tempo Memorizza il tempo solo con una precisione di 100 nanosecondi
timestamp Memorizza un numero univoco quando una nuova riga viene creata o modificata. Il valore del timestamp si basa su un orologio interno e non corrisponde al tempo reale. Ciascuna tabella può contenere solo una variabile timestamp.

Altri tipi di dati di SQL Server

SQL_variante Viene utilizzato per vari tipi di dati ad eccezione di testo, timestamp e ntext. Memorizza fino a 8000 byte di dati.
XML Memorizza dati formattati XML. Massimo 2GB.
cursore Memorizza un riferimento a un cursore utilizzato per le operazioni del database.
tavolo Memorizza il set di risultati per l'elaborazione successiva.
identificativo unico Memorizza il GUID (identificatore univoco globale).

Tipi di dati Oracle

Tipi di dati Oracle String

coda prioritaria
CHAR(dimensione) Viene utilizzato per memorizzare i dati dei caratteri entro la lunghezza predefinita. Può essere memorizzato fino a 2000 byte.
NCHAR(dimensione) Viene utilizzato per memorizzare i dati dei caratteri nazionali entro la lunghezza predefinita. Può essere memorizzato fino a 2000 byte.
VARCHAR2(dimensione) Viene utilizzato per memorizzare dati di stringa variabile entro la lunghezza predefinita. Può essere memorizzato fino a 4000 byte.
VARCHAR(DIMENSIONE) È uguale a VARCHAR2(dimensione). Puoi anche utilizzare VARCHAR(dimensione), ma si consiglia di utilizzare VARCHAR2(dimensione)
NVARCHAR2(dimensione) Viene utilizzato per memorizzare i dati della stringa Unicode entro la lunghezza predefinita. Dobbiamo specificare la dimensione del tipo di dati NVARCHAR2. Può essere memorizzato fino a 4000 byte.

Tipi di dati numerici Oracle

NUMERO(p, s) Contiene precisione p e scala s. La precisione p può variare da 1 a 38 e la scala s può variare da -84 a 127.
GALLEGGIANTE(p) È un sottotipo del tipo di dati NUMBER. La precisione p può variare da 1 a 126.
BINARIO_FLOAT Viene utilizzato per la precisione binaria (32 bit). Richiede 5 byte, incluso il byte di lunghezza.
BINARIO_DOPPIO Viene utilizzato per la doppia precisione binaria (64 bit). Richiede 9 byte, incluso il byte di lunghezza.

Tipi di dati di data e ora Oracle

DATA Viene utilizzato per memorizzare un formato data-ora valido con una lunghezza fissa. Il suo intervallo varia dal 1 gennaio 4712 a.C. al 31 dicembre 9999 d.C.
TIMESTAMP Viene utilizzato per memorizzare la data valida nel formato AAAA-MM-GG con il formato hh:mm:ss.

Tipi di dati Oracle Large Object (tipi LOB)

BLOB Viene utilizzato per specificare dati binari non strutturati. La sua portata arriva fino a 232-1 byte o 4 GB.
BFILE Viene utilizzato per archiviare dati binari in un file esterno. La sua portata arriva fino a 232-1 byte o 4 GB.
CLOB Viene utilizzato per dati con caratteri a byte singolo. La sua portata arriva fino a 232-1 byte o 4 GB.
NCLOB Viene utilizzato per specificare i dati NCHAR (National Character Set) a byte singolo o a lunghezza fissa. La sua portata è fino a 232-1 byte o 4 GB.
RAW(dimensione) Viene utilizzato per specificare dati binari grezzi a lunghezza variabile. La sua portata arriva fino a 2000 byte per riga. È necessario specificarne la dimensione massima.
LUNGO CRUDO Viene utilizzato per specificare dati binari grezzi a lunghezza variabile. La sua portata arriva fino a 231-1 byte o 2 GB, per riga.