Аглая Шниц
Искусственный Интеллект
(136847)
5 лет назад
как я понимаю, для ON DUPLICATE KEY UPDATE нужно нарушение первичного или уникального ключа.
первичный ключ, id, видать автоинкремент, так что не поможет.
можно попробовать навесить уникальность на тройку region-number-street и переписать запрос так:
INSERT INTO adress
(region,number,street,location,date)
VALUES
('$region','$number','$street','$location','$date')
ON DUPLICATE KEY UPDATE
location='$location',
date='$date'
Назира АбдырасуловаУченик (222)
5 лет назад
region - Это район. Может повторяться
number - Это номер дома. Может повторяться.
street - Это улица. Может повторяться
location - Локации возможно на них уникальность повесить
date - дата изменения тоже повторяется
Тогда как получится? ((
Imobilazer
Искусственный Интеллект
(222379)
5 лет назад
ON DUPLICATE KEY UPDATE будет работать если ты знаешь id (ключ) записи и вставляешь с таким же
Имхо рпоще попробовать выбрать существующую запись, если результат ноль строк то запрос сделать на вставку, иначе на обновление
no name
Мыслитель
(6058)
5 лет назад
Через PHP проверять, есть ли в базе уже такой id / token / login / etc.
В случае, если нет - добавлять
В случае, если есть - перезаписывать какие-то нужные тебе данные
В чем именно заключается как таковая проблема? Непонимание того, как написать подобный код?
SQL феерически устарел. Есть куча интересных и удобных BSD. Почему не юзаете их, если хотите работать в PhpMyAdmin, к слову?
Как сделать так чтобы данные он добавлял, а существующие записи он обновлял. СУБД - PHP-MyAdmin. Возможно можно ON DUPLICATE KEY UPDATE. Только не знаю как?