Есть таблица categories(shop_id, index, title)
И есть индекс на shop_id и index чтобы они не повторялись (чтобы у магазина не было одинаковых индексов)
Так вот, пробую такой запрос:
update `categories` set `index` = `index` + 1 where `shop_id` = '23eb94c0-1a19-11e8-acea-ade469f32ac7'
То есть просто хочу увеличить индекс на 1 у всех категорию конкретного магазина
Но БД выдает следующее:
#1062 - Дублирующаяся запись '1-23eb94c0-1a19-11e8-acea-ade469f32ac7' по ключу 'categories_index_shop_id_unique'
То есть он говорит что получаются не уникальные связки полей
НО при этом если делать не инкремент, а наоборот отнимать единицу, то все работает:
update `categories` set `index` = `index` - 1 where `shop_id` = '23eb94c0-1a19-11e8-acea-ade469f32ac7'
Как это можно починить?