Livello di difficoltà: |
|
MySQL è il database open source per eccellenza. Cresciuto molto in questi anni, è diventato il DBMS più utilizzato dalla comunità open source e apprezzato anche da chi scrive pagine con tecnologie diverse da PHP e su server diversi da Linux.
|
| |
I tipi di campi stringhe in MySQL
MySQL
Un tipo di dato stringa è un campo che può contenere qualunque tipo di carattere: numerico, alfanumerico, simboli ecc.
Come per i campi numerici ce ne sono di vari tipi, a seconda della quantità di dati che si vuole salvare.
Nella tabella seguente, maggiori informazioni:
| Nome del tipo |
Dimensioni massime |
Memoria occupata |
| CHAR |
255 byte |
X byte (*) |
| VARCHAR |
255 byte |
X+1 byte (*) |
| TINYTEXT |
255 byte |
X+1 byte (*) |
| TINYBLOB |
255 byte |
X+2 byte (*) |
| TEXT |
65535 byte |
X+2 byte (*) |
| BLOB |
65535 byte |
X+2 byte (*) |
| MEDIUMTEXT |
1,6 MB |
X+3 byte (*) |
| MEDIUMBLOB |
1,6 MB |
X+3 byte (*) |
| LONTEXT |
4,2 GB |
X+4 byte (*) |
| LONGBLOB |
4,2 GB |
X+4 byte (*) |
(*) X è lo spazio occupato dal testo all'interno del campo
CHAR e VARCHAR
Questi due tipi di campi, nonostante la somiglianza nel nome, si comportano in maniera molto diversa. Il primo ha una lunghezza fissa, mentre il secondo è variabile.
Ciò significa che se creassimo un campo CHAR(9) e al suo interno specificassimo "ciao", questo campo occuperebbe comunque 9 byte invece di 4. Con VARCHAR(9) invece, scrivendo al suo interno "ciao" il campo occuperebbe 5 byte (guardare la tabella superiore X+1 dove in questo caso è X=4, quindi 4+1=5).
All'interno di una tabella, non è possibile utilizzarli entrambi. Creando ad esempio due campi nella stessa tabella, uno CHAR e l'altro VARCHAR, MySQL renderà entrambi VARCHAR, come è possibile vedere dall'immagine seguente, realizzata con PhpMyAdmin.
TEXT e BLOB
TEXT e BLOB sono i campi di MySQL dedicati a contenere grandi quantità di dati. Fino a 4,2 GB con i LONGTEXT e LONGBLOB.
Il secondo in particolare, il campo di tipo BLOB sta per Bynary Large Object e consente il salvataggio di interi file nel formato binario. Utile per nascondere file dietro username e password, senza così riuscire a rintracciare il percorso fisico del file (che infatti non esiste, essendo incluso direttamente nel database).
I modificatori
I modificatori previsti da questi tipi di campi sono:
- BINARY:
ammesso dai campi CHAR e VARCHAR: i dati salvati saranno trattati come stringhe binarie.
- DEFAULT:
ammesso da tutti i tipi di campi: imposta un valore predefinito nel caso il campo fosse lasciato vuoto.
- NOT NULL:
ammesso da tutti i tipi di campi: impone che il campo non sia lasciato vuoto.
- NULL:
ammesso da tutti i tipi di campi: se il campo non contiene un valore, sarà vuoto.
- PRIMARY KEY:
ammesso da tutti i campi, ma è consigliabile impostarlo su dati di tipo numerico. Serve a impostare un indice i quali dati non devono essere vuoti.
Gli altri modificatori: UNIQUE, UNSIGNED e ZEROFILL sono stati trattati nella puntata dedicata ai tipi di dati numerici.
|