Creiamo una tabella-Database

Creare una tabella

Dopo aver creato la connessione, possiamo agire sul database. Vediamo quindi come creare una tabella utilizzando diversi procedimenti. Dovremo comunicare direttamente con il database, quindi dovremo usare entrambi i codici Php e Sql (Structured Query Language). I comandi che inviamo al database sono detti query che letteralmente significa richiesta.  Infatti noi chiediamo al database di compiere una certa operazione. In particolare gli chiederemo di creare una tabella con determinate caratteristiche. Aggiungiamo in fondo al file install.php:

$query = “CREATE TABLE news (id INT (5) UNSIGNED not null AUTO_INCREMENT, titolo VARCHAR (255) not null , testo TEXT not null ,  PRIMARY KEY (id))”;

Vediamo nel dettaglio che cosa chiede questa query:

CREATE TABLE news.

Chiede la creazione di una tabella di nome news. In seguito, specificheremo le colonne di cui sarà composta e le loro caratteristiche.

id INT (5) UNSIGNED not null AUTO_INCREMENT

Tutta questa parte indica le caratteristiche della prima colonna, cioè l’id. Questo dovrà essere un intero composto al massimo da cinque cifre. Ovviamente potete specificare un valore diverso se pensate che si possano inserire più di 99.999 articoli. Un limite ragionevole, però, ci consente di non sprecare inutilmente spazio per la memorizzazione di un numero eccessivamente grande. Visto che la numerazione parte da 1 il valore di id sarà sempre maggiore di zero e lo specifichiamo attraverso l’attributo UNSIGNED. In seguito imponiamo che il campo id sia sempre definito e che quindi non possa restare vuoto attraverso not null. Infine specifichiamo a MySQL che questo deve essere un campo AUTO_INCREMENT e che quindi deve  incrementarlo ogni volta che inseriamo un nuovo record.

titolo VARCHAR (255) not null

Esso è il campo che conterrà il titolo delle news. Gli assegnamo una stringa di lunghezza massima di 255 caratteri. Se specifichiamo una stringa di tipo varchar dobbiamo sempre specificare la lunghezza massima di cui sarà la stringa. Questa non potrà mai essere più di 255, quindi qui sfruttiamo al limite il tipo varchar. Anche il titolo dovrà sempre essere specificato (not null).

testo TEXT not null

Come abbiamo visto in precedenza anche il testo è una stringa. Ragionevolmente, però, il testo sarà più lungo del titolo e comunque più grande di 255 caratteri. Per questo genere di
stringhe esistono i tipi TINYTEXT (max 255 caratteri), TEXT (max 65.535 caratteri), MEDIUMTEXT (max 16.777.215 caratteri) e LONGTEXT (max 4.294.967.295 caratteri). Abbiamo scelto il tipo TEXT,
perché questo è il più vicino alle possibili caratteristiche dell’articolo che verrà inserito, ma ovviamente si potrebbe utilizzare anche il tipo MEDIUMTEXT.

PRIMARY KEY (id)

Tramite questo comando indichiamo quale colonna sarà la chiave primaria, quindi quella che identificherà univocamente le righe. Automaticamente questo aggiunge al campo id la proprietà di unicità. Quindi se una riga ha un determinato numero di id, nessun’altra riga potrà avere lo stesso id.

Fin qui abbiamo raccolto i principali tipi di colonne, ma potrete trovarne un elenco completo nella documentazione di MySQL sul sito ufficiale (www.mysql.com).