Задать вопрос
doublench21
@doublench21

UNIQUE индекс и один запрос ?

Есть таблица `indexing_word` (`id`, `word`) c UNIQUE(`word`) в ней. Если делать запросы по одному слову, то неуникальные записи будут отсеиваться, что и верно. Но допустим я хочу сделать один запрос, а не делать их кучу в цикле. А сделать не могу, т.к. выходит такой казус:
INSERT INTO `u360508016_base`.`indexing_word` (`id`, `word`) VALUES (NULL, 'zxc'), (NULL, 'zxcascac')

#1062 - Duplicate entry 'zxc' for key 'word'
То есть если хоть одно слово уже есть, то и весь запрос отклоняется. Как бы этого избежать ?
  • Вопрос задан
  • 2185 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 2
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
INSERT IGNORE
Ответ написан
Комментировать
@ugodrus
Я так понимаю Id у вас автоинкрементный. Тогда зачем вам (`id`, `word`) в списке полей если все значения с Null для Id. Можно просто (`word`) и передавать просто слова. Для предотвращения ошибок на дубликатах после insert вставьте ignore. Также советую обратить внимание на следующую конструкцию on duplicate key update. Тоже из той же оперы. Знать пригодится.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽