Ho una query sql in cui voglio inserire più righe in una singola query. così ho usato qualcosa come:MySQL ON DUPLICATE KEY UPDATE per più righe inserite in una singola query
$sql = "INSERT INTO beautiful (name, age)
VALUES
('Helen', 24),
('Katrina', 21),
('Samia', 22),
('Hui Ling', 25),
('Yumie', 29)";
mysql_query($sql, $conn);
Il problema è quando eseguo questa query, voglio verificare se una chiave unica (che non è la chiave primaria), per esempio. 'nome' nel caso precedente, deve essere controllato e se tale 'nome' esiste già, l'intera riga corrispondente deve essere aggiornata altrimenti inserita.
Ad esempio, in seguito ad esempio, se "Katrina" è già presente nel database, l'intera riga, indipendentemente dal numero di campi, deve essere aggiornata. Anche in questo caso se 'Samia' non è presente, la riga deve essere inserita.
Ho pensato di utilizzare:
INSERT INTO beautiful (name, age)
VALUES
('Helen', 24),
('Katrina', 21),
('Samia', 22),
('Hui Ling', 25),
('Yumie', 29) ON DUPLICATE KEY UPDATE
Ecco la trappola. Mi sono bloccato e ho confuso come procedere. Ho più righe da inserire/aggiornare alla volta. Per favore dammi la direzione. Grazie.
Grazie mille. Questo è esattamente quello che voglio .... Grazie ancora ... – Prashant
** bellissimo **, esattamente quello di cui avevo bisogno. * heh, guarda cosa ho fatto lì? * –
Cosa fare se è necessario includere un'istruzione IF nell'aggiornamento che presenta una condizione diversa per ogni riga? – logic