-
Crea un
UNIQUE
vincolo sul tuosubs_email
colonna, 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 .