Commenti(0)
PHP MySQL Tutorial di base - Lezione 6 - Create table
Nel seguente articolo illustreremo come creare una tabella MySQL da una pagina PHP e quali sono le cose importanti da sapere del comando "CREATE TABLE". A chiarirci le idee ci saranno alcuni esempi di codice da provare e links di approfondimento.
PHP – MySQL: CREATE TABLE
Una tabella MySQL ha come suo scopo principale quello di raccogliere dati in modo organizzato.
La truttura di una tabella è sostanzialmente data da colonne e righe (o records).
Le colonne raccolgono il tipo di dato che vogliamo immagazzinare, mentre le righe raccolgono il dato effettivo in base al tipo stabilito dalla colonna.
Di seguito riportiamo un esempio di una tabella (C: colonne / R: righe):
Tabella n.1 – impiegati:
| Righe\Colonne | (C1)nome | (C2)livello | (C3)salario |
| (R1) | Paolo Rossi | 3 | 1000.00 |
| (R2) | Mario Bianchi | 5 | 1400.00 |
| (R3) | Michele Verdi | 4 | 1200.00 |
| (R4) | Simona Neri | 3 | 1150.00 |
Per semplificare le cose, abbiamo aggiunto alle colonne ed alle righe un contatore (C1, C2, ... ed R1, R2, ...) in modo da renderci conto a tutti gli effetti quali sono le righe e quali sono le colonne.
In una tabella reale, tuttavia, i dati che vengono salvati sono solo quelli relativi alle colonne e alle righe, non i contatori.
Le nostre tre colonne sono di tre tipi di dati differenti: abbiamo rispettivamente un valore alfanumerico, uno numerico intero e uno numerico con decimali.
Le righe invece sono 4 in questo esempio e contengono una sorta di anagrafica molto semplficata.
PHP - MySQL – Creiamo la nostra prima tabella!
Come si può già capire, prima di inserire i dati in una tabella dobbiamo definire il tipo di dato che vogliamo gestire per ogni colonna. Vediamo subito un esempio di come creare una tabella con PHP:
Esempio – Come creare una tabella MySQL da PHP:
1<?php 2//Ci connettiamo al nostro server MySQL sul database "test" 3mysql_connect("localhost", "root", "") or die(mysql_error()); 4echo "Connesso a MySQL!!<br />"; 5mysql_select_db("test") or die(mysql_error()); 6echo "Connesso al database 'test'!!<br />"; 7 8// Creiamo una tabella MySQL nel database selezionato 9mysql_query("CREATE TABLE impiegati( 10 id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(id), 11 nome VARCHAR(255), 12 livello INT)") or die(mysql_error()); 13 14echo "Tabella Creata!!<br />"; 15?>
Risultato:
>>> Connesso a MySQL!!
>>> Connesso al database 'test'!!
>>> Tabella Creata!!
Okey! A questo punto, ci conviene analizzare alcune righe del codice scritto per capire cosa succede in questa pagina PHP: la prima cosa da notare è il comando mysql_query("..."); questo comando chiede a mysql di eseguire la query specificata tra i doppi apici, in questo caso parliamo della "CREATE TABLE ...".
Subito dopo la frase "CREATE TABLE" c'è "impiegati". Questo è il nome che stiamo dando alla tabella. Conviene dare dei nomi esplicativi alle tabelle che stiamo utilizzando, sebbene possa risultare all'inizio più 'laborioso' rispetto a chiamare le tabella 'tabella1', 'tabella2', ecc..., vi renderà sicuramente più facile ricordare cosa contiene ogni tabella dopo uno o più anni dalla loro creazione.
id INT NOT NULL AUTO_INCREMENT
Con questa parte di comando indichiamo a MySQL che la prima colonna della tabella avrà come nome: 'id', che è di tipo numerico intero, che non può contenere valori 'null' e che si incrementa man mano che inseriamo righe nella nostra tabella.
PRIMARY KEY(id)
Questa parte della 'create' indica a MySQL che il campo 'id' è la chiave primaria della tabella. Ciò sta a significare che avremo un valore di 'id' diverso per ogni record della tabella che identificherà l'intera riga. Questo è anche il motivo per cui questo campo si auto incrementa.
Se volessimo provare ad inserire due righe con lo stesso 'id', otterremmo un errore: 'Duplicate entry'.
nome VARCHAR(255)
Qui stiamo indicando che il secondo campo della tabella è 'nome' e che il tipo di questo campo è VARCHAR(255). Per VARCHAR(255) si intende un campo alfanumerico variabile, la cui dimensione massima è di 255 caratteri.
livello INT
Questo è un campo di tipo intero in cui inseriremo il livello di ogni impiegato.
or die(mysql_error());
Qui indichiamo alla nostra pagina PHP cosa fare in caso di errori, come nei comandi visti in precedenza mysql_connect e mysql_select_db.
Per informazioni più dettagliate sulla sintassi MySQL per la creazione, modifica ed eliminazione di tabelle, consigliamo un approfondimento alla nostra sezione dedicata: http://www.mysqlitalia.it/articoli/5-creare-e-modificare-le-tabelle-con-mysql.
Per quanto riguarda i tipi di dati che possiamo utilizzare con le nostre tabelle vi rimandiamo all'approfondimento su questa pagina: http://www.mysqlitalia.it/recipes/58-tipi-di-dati-mysql.
Cosa fare adesso?
Giusto per essere sicuri di aver fatto tutto bene, consiglierei di accedere al vostro database attraverso uno dei tool di amministrazione che abbiamo indicato nelle lezioni precedenti (phpMyAdmin, heidiSQL, ecc...) e controllare che la tabella sia stata effettivamente creata.
Inoltre, potete esercitarvi nella creazione di altre tabelle con tipi di dati diversi a vostro piacimento.
Il mio consiglio personale è che più prove si fanno e prima si prende familiarità, quindi: provare, provare, provare! ... e poi passare alla lezione successiva :)
- Scarica l'esempio Create table 1
Condividi su:
Esprimi un voto:
Argomenti chiave:

MySQL Report un tool di shell per tenere tutto sotto controllo