Query di aggiornamento
Le query di aggiornamento o modifica consetono di modificare una nuova riga già presente in una tabella.
Update
UPDATE nomeTab SET campo1 = 'nuovoVal1',campo2='nuovoVal2',... WHERE condizioni
- nomeTab: nome della tabella sulla quale vogliamo operare
- condizioni: sequenza di condizini sulle righe
Dopo la parola SET ci va una lista di coppie campo=valore, una coppia per ogni campo da modificare.
Se non si inserice il WHERE, verranno modificati i campi di tutto il database
Supponiamo di voler modificare un campo nella seguente tabella utenti:
| id | username | password | |
|---|---|---|---|
| 1 | campione88 | campione88@libero.it | 1234qwer |
| 2 | lollo | lollo234@gmail.com | superPWD75!! |
| 3 | cippaLippa | albertoScala@gmail.com | pallino!! |
| 5 | malibuStacy | lisa.s@hotmail.com | sassofono |
| 6 | malibuStacy2 | waylon@smithers.name | eccellente |
La query sarà:
Instert into
UPDATE utenti SET password='12345qwer' WHERE id = 1
Dopo l'escuzione della query, la tabella sarà:
| id | username | password | |
|---|---|---|---|
| 1 | campione88 | campione88@libero.it | 12345qwer |
| 2 | lollo | lollo234@gmail.com | superPWD75!! |
| 3 | cippaLippa | albertoScala@gmail.com | pallino!! |
| 5 | malibuStacy | lisa.s@hotmail.com | sassofono |
| 6 | malibuStacy2 | waylon@smithers.name | eccellente |
| 7 | mrBurns | burns@burns.com | nuculare |
Se dimenticassimo il WHERE, lanciando la seguente query:
Instert into
UPDATE utenti SET password='12345qwer'
La tabella diventerebbe:
| id | username | password | |
|---|---|---|---|
| 1 | campione88 | campione88@libero.it | 12345qwer |
| 2 | lollo | lollo234@gmail.com | 12345qwer |
| 3 | cippaLippa | albertoScala@gmail.com | 12345qwer |
| 5 | malibuStacy | lisa.s@hotmail.com | 12345qwer |
| 6 | malibuStacy2 | waylon@smithers.name | 12345qwer |
| 7 | mrBurns | burns@burns.com | 12345qwer |
Le modifiche sono irreversibili.
Query di aggiornamento nel PHP
Per lanciare un UPDATE in PHP, bisogna utilizzare la funzione mysqli_query(). Prima di eseguire una query si deve aprire la connessione con il server.
query di inserimento con PHP
//apriamo la connsessione
$link = mysqli_connect('127.0.0.1','root','','utenti');
//definiamo la query come una stringa
$query = "UPDATE utenti SET password='12345qwer'
WHERE id = 1;";
//lanciamo la query
mysqli_query($link,$query);
Per quanto riguarda le query id inserimento, modifica e cancellazione non è necessario memorizzare il risulto della query.
