Ответ 1
Используйте UPDATE IGNORE
:
update IGNORE bccontacts
set mobile_no='919727048248'
where mobile_no=09727048248
Дополнительная информация здесь: http://dev.mysql.com/doc/refman/5.0/en/update.html
Я создал одну таблицу, содержащую UNIQUE 'mobile_no', как..
09727048248
9727048248
9824578564
9898998998
Затем я собираюсь проверить номер мобильного телефона, если он действителен или нет, и если он действителен, я хочу установить его в правильный формат, например 919727048248.
Для этого я вызвал запрос на обновление, например..
update bccontacts
set mobile_no='919727048248'
where mobile_no=09727048248
Итак, первый раз он успешно запускается, а затем второй раз отвечает, что..
ОШИБКА 1062 (23000): Дублируемая запись '919727048248' для ключа 'mobile_no'
Потому что есть уникальный ключ, уже установленный для "mobile_no".
Итак, есть ли другой запрос, который IGNORE DUPLICATE KEY ON UPDATE
?
Используйте UPDATE IGNORE
:
update IGNORE bccontacts
set mobile_no='919727048248'
where mobile_no=09727048248
Дополнительная информация здесь: http://dev.mysql.com/doc/refman/5.0/en/update.html
если u объявил номер мобильного телефона в качестве первичного ключа в вашей таблице, а не имеет два одинаковых номера мобильных телефонов в таблице. Если следующая ссылка может быть полезна для u;