У меня есть запрос sql, где я хочу вставить несколько строк в один запрос. поэтому я использовал что-то вроде:
$sql = "INSERT INTO beautiful (name, age)
VALUES
('Helen', 24),
('Katrina', 21),
('Samia', 22),
('Hui Ling', 25),
('Yumie', 29)";
mysql_query( $sql, $conn );
Проблема заключается в том, когда я выполняю этот запрос, я хочу проверить, является ли ключ UNIQUE (который не является PRIMARY KEY), например. 'name' в вышеприведенном случае, следует проверить, и если такое "имя" уже существует, соответствующая целая строка должна быть обновлена в противном случае.
Например, ниже, например, если "Катрина" уже присутствует в базе данных, вся строка, независимо от количества полей, должна быть обновлена. Опять же, если "Samia" нет, строка должна быть вставлена.
Я думал об использовании:
INSERT INTO beautiful (name, age)
VALUES
('Helen', 24),
('Katrina', 21),
('Samia', 22),
('Hui Ling', 25),
('Yumie', 29) ON DUPLICATE KEY UPDATE
Вот ловушка. Я застрял и смутился, как продолжить. У меня есть несколько строк для вставки/обновления за раз. Пожалуйста, дайте мне направление. Спасибо.