MariaDB - Tipi di dati

Una buona definizione dei campi è essenziale per l'ottimizzazione del database. L'approccio ideale richiede l'utilizzo esclusivo di un campo del tipo e delle dimensioni necessarie. Ad esempio, se utilizzerai solo un campo largo cinque caratteri, non definire un campo largo 20 caratteri. I tipi di campo (o colonna) sono noti anche come tipi di dati in base ai tipi di dati memorizzati all'interno del campo.

I tipi di dati MariaDB possono essere classificati come valori numerici, data e ora e stringa.

Tipi di dati numerici

I tipi di dati numerici supportati da MariaDB sono i seguenti:

  • TINYINT - Questo tipo di dati rappresenta piccoli numeri interi che rientrano nell'intervallo con segno compreso tra -128 e 127 e l'intervallo senza segno compreso tra 0 e 255.

  • BOOLEAN - Questo tipo di dati associa un valore 0 a "false" e un valore 1 a "true".

  • SMALLINT - Questo tipo di dati rappresenta i numeri interi compresi nell'intervallo con segno compreso tra -32768 e 32768 e nell'intervallo senza segno compreso tra 0 e 65535.

  • MEDIUMINT - Questo tipo di dati rappresenta numeri interi nell'intervallo con segno compreso tra -8388608 e 8388607 e nell'intervallo senza segno compreso tra 0 e 16777215.

  • INT(also INTEGER)- Questo tipo di dati rappresenta un numero intero di dimensioni normali. Quando è contrassegnato come non firmato, l'intervallo va da 0 a 4294967295. Quando è firmato (impostazione predefinita), l'intervallo va da -2147483648 a 2147483647. Quando una colonna è impostata su ZEROFILL (uno stato senza segno), tutti i suoi valori sono preceduti da zeri da inserire Cifre M nel valore INT.

  • BIGINT - Questo tipo di dati rappresenta numeri interi compresi nell'intervallo con segno compreso tra 9223372036854775808 e 9223372036854775807 e nell'intervallo senza segno compreso tra 0 e 18446744073709551615.

  • DECIMAL(anche DEC, NUMERIC, FIXED) - Questo tipo di dati rappresenta numeri a virgola fissa precisi, con M che specifica le sue cifre e D che specifica le cifre dopo il decimale. Il valore M non aggiunge "-" o il punto decimale. Se D è impostato su 0, non viene visualizzata alcuna parte decimale o frazionaria e il valore verrà arrotondato al DECIMALE più vicino su INSERT. Il numero massimo consentito di cifre è 65 e il massimo per i decimali è 30. Il valore predefinito per M in caso di omissione è 10 e 0 per D in caso di omissione.

  • FLOAT - Questo tipo di dati rappresenta un piccolo numero a virgola mobile del valore 0 o un numero entro i seguenti intervalli -

    • Da -3,402823466E + 38 a -1,175494351E-38

    • 1.175494351E-38 a 3.402823466E + 38

  • DOUBLE (anche REAL e DOUBLE PRECISION) - Questo tipo di dati rappresenta i numeri in virgola mobile di dimensione normale del valore 0 o entro i seguenti intervalli -

    • -1.7976931348623157E + 308 a -2.2250738585072014E-308

    • 2.2250738585072014E-308 a 1.7976931348623157E + 308

  • BIT- Questo tipo di dati rappresenta i campi di bit con M che specifica il numero di bit per valore. In caso di omissione di M, il valore predefinito è 1. I valori di bit possono essere applicati con "b '[valore]'" in cui il valore rappresenta il valore di bit in 0 e 1. Lo zero-padding avviene automaticamente da sinistra per l'intera lunghezza; ad esempio, "10" diventa "0010".

Tipi di dati di data e ora

I tipi di dati di data e ora supportati da MariaDB sono i seguenti:

  • DATE - Questo tipo di dati rappresenta un intervallo di date compreso tra "1000-01-01" e "9999-12-31" e utilizza il formato di data "AAAA-MM-GG".

  • TIME - Questo tipo di dati rappresenta un intervallo di tempo compreso tra "-838: 59: 59.999999" e "838: 59: 59.999999".

  • DATETIME- Questo tipo di dati rappresenta l'intervallo da "1000-01-01 00: 00: 00.000000" a "9999-12-31 23: 59: 59.999999". Utilizza il formato "AAAA-MM-GG HH: MM: SS".

  • TIMESTAMP- Questo tipo di dati rappresenta un timestamp del formato "AAAA-MM-GG HH: MM: GG". Viene utilizzato principalmente per dettagliare l'ora delle modifiche al database, ad esempio l'inserimento o l'aggiornamento.

  • YEAR- Questo tipo di dati rappresenta un anno in formato a 4 cifre. Il formato a quattro cifre consente valori compresi tra 1901 e 2155 e 0000.

String DataTypes

I valori del tipo di stringa supportati da MariaDB sono i seguenti:

  • String literals - Questo tipo di dati rappresenta le sequenze di caratteri racchiuse tra virgolette.

  • CHAR- Questo tipo di dati rappresenta una stringa di lunghezza fissa riempita a destra contenente spazi di lunghezza specificata. M rappresenta la lunghezza della colonna di caratteri in un intervallo da 0 a 255, il suo valore predefinito è 1.

  • VARCHAR - Questo tipo di dati rappresenta una stringa di lunghezza variabile, con un intervallo M (lunghezza massima della colonna) da 0 a 65535.

  • BINARY - Questo tipo di dati rappresenta stringhe di byte binarie, con M come lunghezza della colonna in byte.

  • VARBINARY - Questo tipo di dati rappresenta stringhe di byte binarie di lunghezza variabile, con M come lunghezza della colonna.

  • TINYBLOB- Questo tipo di dati rappresenta una colonna BLOB con una lunghezza massima di 255 (28 - 1) byte. Nella memoria, ciascuno utilizza un prefisso di lunghezza di un byte che indica la quantità di byte nel valore.

  • BLOB- Questo tipo di dati rappresenta una colonna BLOB con una lunghezza massima di 65.535 (216 - 1) byte. Nella memoria, ciascuno utilizza un prefisso di lunghezza di due byte che indica la quantità di byte nel valore.

  • MEDIUMBLOB- Questo tipo di dati rappresenta una colonna BLOB con una lunghezza massima di 16.777.215 (22 4 - 1) byte. Nella memoria, ciascuno utilizza un prefisso di lunghezza di tre byte che indica la quantità di byte nel valore.

  • LONGBLOB- Questo tipo di dati rappresenta una colonna BLOB con una lunghezza massima di 4.294.967.295 (2 32 - 1) byte. Nella memoria, ognuno utilizza un prefisso di lunghezza di quattro byte che indica la quantità di byte nel valore.

  • TINYTEXT- Questo tipo di dati rappresenta una colonna di testo con una lunghezza massima di 255 (2 8 - 1) caratteri. Nella memoria, ciascuno utilizza un prefisso di lunghezza di un byte che indica la quantità di byte nel valore.

  • TEXT- Questo tipo di dati rappresenta una colonna di testo con una lunghezza massima di 65.535 (2 16 - 1) caratteri. Nella memoria, ciascuno utilizza un prefisso di lunghezza di due byte che indica la quantità di byte nel valore.

  • MEDIUMTEXT- Questo tipo di dati rappresenta una colonna di testo con una lunghezza massima di 16.777.215 (2 24 - 1) caratteri. Nella memoria, ciascuno utilizza un prefisso di lunghezza di tre byte che indica la quantità di byte nel valore.

  • LONGTEXT- Questo tipo di dati rappresenta una colonna di testo con una lunghezza massima di 4.294.967.295 o 4 GB (2 32 - 1) caratteri. Nella memoria, ognuno utilizza un prefisso di lunghezza di quattro byte che indica la quantità di byte nel valore.

  • ENUM - Questo tipo di dati rappresenta un oggetto stringa con un solo valore da un elenco.

  • SET- Questo tipo di dati rappresenta un oggetto stringa con zero o più valori da un elenco, con un massimo di 64 membri. I valori SET sono presenti internamente come valori interi.