SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 27.01.2011 17:35:46

lordent
Участник
Откуда: Москва
Зарегистрирован: 22.09.2010
Сообщений: 2

организовать запрос IF ( !update row ) insert

Возможно такая тема уже была, но все примеры, что нашел в интернете дают ошибку в синтаксисе.

Задача такая:
Есть массив с большим количеством записей.
Делать в цикле запрос на наличие записи в таблице и последующим инсертом или обновлением, не очень хорошо.
В итоге получается два запроса. При большом количестве записей стало критично.

Как сделать запрос вида хотя бы такого
if ( row exists )
      update
else
      insert

Но лучше, конечно же, что-то в этом роде

IF ( !update row )
insert

P.S. за ранее спасибо

Неактивен

 

#2 28.01.2011 01:52:35

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: организовать запрос IF ( !update row ) insert

Синтаксис такой же, но наоборот wink
INSERT ... ON DUPLICATE KEY UPDATE
Т.е. попытаться вставить, если строка есть — то обновить.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson