Page 149 - Corso di PHP - Livello base
P. 149
Mi preme specificare che la funzione mysql_query è da
utilizzarsi per qualsiasi operazione eseguita sul database,
quindi sarà una funzione che ci accompagnerà per un bel po' di
tempo. Potete trovare la documentazione ufficiale a questa
pagina: http://php.net/manual/en/function.mysql-query.php.
Abbiamo visto come inserire dati che riempiano tutti i campi
della tabella. Ma cosa dovremmo fare se volessimo riempire
soltanto alcuni campi? Per esempio se volessimo lasciare in
bianco il campo Link? Dovremmo specificare i singoli campi
subito dopo il nome della tabella, inserendoli tra parentesi
tonde, come nell'esempio seguente:
$query = "INSERT INTO Post (Id, IdAutore, Titolo, TestoHTML, Data) VALUES ('NULL',
'1', 'Ciao a tutti', 'Ciao a tutti! Questo è il mio primo post', '2011-04-03 12:00:00')";
mysql_query($query);
In questo modo verranno inseriti tutti i dati che abbiamo
specificato ma sarà lasciato in bianco il campo Link. Questa
sintassi è più o meno simile per tutte le operazioni SQL:
abbiamo un comando e abbiamo poi una o più clausole che
specificano meglio ciò che viene indicato dal comando.
Passiamo ora al comando UPDATE, che serve per aggiornare i
record e che è un pochino più complesso rispetto a INSERT.
Partiamo dal caso base, quello per aggiornare un solo campo,
ma in tutti i record:
$query = "UPDATE Post SET IdAutore = 1";
mysql_query($query);
Questo è il caso più banale (e, se vogliamo, anche il più inutile):
con il comando UPDATE abbiamo aggiornato la tabella Post
impostando tutti i valori del campo IdAutore (quindi su tutti i
record) a 1. Per aggiornare soltanto un campo nella tabella (o
149