Page 150 - Corso di PHP - Livello base
P. 150
due o tre o comunque non tutti), dovremo essere più specifici:
ci servirà la clausola WHERE, tramite la quale specificheremo
un altro campo che dovrà identificare bene il record (o i
record) da aggiornare. Ma vedendo il codice è più facile da
intuire:
$query = "UPDATE Post SET Titolo = 'Secondo post' WHERE Id = '1'";
mysql_query($query);
In questo modo abbiamo modificato un solo record, quello
che ha come Id il numero uno (ricordiamo che Id è la chiave
primaria della nostra tabella quindi si tratta di un campo che
non può essere doppio, non ci saranno cioè due record con lo
stesso valore nel campo Id). Una piccola parentesi: noi stiamo
facendo le operazioni con due passaggi ma nessuno vi vieta di
fare le interrogazioni in questo modo:
mysql_query("UPDATE Post SET Titolo = 'Secondo post' WHERE Id = '1'");
È un modo più rapido per fare la stessa cosa: in questo corso
facciamo però uso delle variabili per una più chiara lettura e
comprensione della sintassi SQL.
Ma andiamo avanti con le nostre operazioni. Se nel nostro
database avessimo due post che hanno come titolo “Ciao” e
volessimo cambiarlo in “Ciao a tutti!” dovremmo comportarci
come sopra:
$query = "UPDATE Post SET Titolo = 'Ciao a tutti!' WHERE Titolo = 'Ciao'";
mysql_query($query);
WHERE è una delle clausole più importanti della sintassi
SQL perché si abbina a moltissimi comandi. Cosa dobbiamo
fare invece se vogliamo dare lo stesso titolo a due post che
hanno titoli diversi, per esempio uno “Ciao” e uno “Ciao a
150