Возможно, вы захотите использовать столбцы с автоинкрементом . Это позволит вам вставить данные, и MySQL выберет для вас индекс. Для этого вам нужно денормализовать ваши данные.
Вам понадобятся две таблицы: orders
и order_items
, где:
orders
------
order_id
[any other columns]
order_items
-----------
item_id
order_id
[any other columns]
Вставьте порядок в таблицу orders
с помощью NULL
order_id
и запишите order_id
, установленный MySQL. Теперь вставьте order_item
, используя order_id
, который у вас есть, и позвольте ему автоматически сгенерировать item_id
.
Таким образом, MySQL сгенерирует числа, поэтому вам не нужно беспокоиться о двух заказах, пытающихся использовать один и тот же идентификатор заказа. Кроме того, любая информация о заказе не будет дублироваться для каждого элемента в заказе.