Ciao, sono un programmatore a tempo perso e proprio oggi ho scoperto l'esistenza del parametro ON DUPLICATE KEY UPDATE, ma non riesco ad utilizzarlo. Spiego il problema con un esempio:
ho una tabella nominata tab con 4 cambi nome,cognome,sesso,nazione. Supponiamo che la chiave primaria siano i campi nome più il cognome, quindi non potranno esserci 2 omonimi sia di nome che di cognome contemporaneamente. La query è la seguente:
Codice PHP:
$query="INSERT INTO tab (nome,cognome,sesso,nazione)
VALUES ('$nome','$cognome','$sesso','$nazione') ON DUPLICATE KEY UPDATE nazione='ITALIA'";
Come mai questa query blocca il programma non appena trova un duplicato della chiave primaria (nome+cognome) con il seguente errore: Duplicate entry 'Mario-Rossi' for key 'PRIMARY'? Non dovrebbe servire proprio ad aggiornare una tupla la cui chiave primaria sia già presente nel database? Dove sto sbagliando?
Grazie per l'attenzione!