-
Crea un
UNIQUEvincolo sul tuosubs_emailcolonna, se non esiste già:ALTER TABLE subs ADD UNIQUE (subs_email) -
Usa
INSERT ... ON DUPLICATE KEY UPDATE:INSERT INTO subs (subs_name, subs_email, subs_birthday) VALUES (?, ?, ?) ON DUPLICATE KEY UPDATE subs_name = VALUES(subs_name), subs_birthday = VALUES(subs_birthday)
È possibile utilizzare la funzione VALUES(col_name) nella clausola UPDATE per fare riferimento ai valori di colonna dalla parte INSERT di INSERT ... ONDUPLICATE KEY UPDATE - dev.mysql.com
- Nota che ho usato i segnaposto dei parametri al posto delle stringhe letterali, come una cosa veramente dovrebbe utilizzare istruzioni parametrizzate per difendersi dagli attacchi SQL injection .