Mysql
 sql >> Database >  >> RDS >> Mysql

inserimento condizionale mysql - se non esiste inserisci

Usa REPLACE - funziona esattamente come INSERT, tranne per il fatto che se una vecchia riga nella tabella ha lo stesso valore di una nuova riga per una CHIAVE PRIMARIA o un indice UNIQUE, la vecchia riga viene eliminata prima dell'inserimento della nuova riga.

http://dev.mysql.com/doc/refman/5.0 /it/sostituisci.html

-- For your example query
REPLACE INTO table_name(name, value, id) VALUES
('phill', 'person', 12345) 

Modifica:poiché non puoi utilizzare REPLACE, un'altra opzione è:impostare gli indici di vincolo per i dati della tabella (chiave primaria, univocità) e utilizzare INSERT IGNORE

INSERT IGNORE INTO table_name
SET name = 'phill',
    value = 'person',
    id = 12345;