и CREATE TABLE users_wishes (user_id BIGINT, order_id BIGINT, CONSTRAINT users_wishes_pk PRIMARY KEY (user_id, order_id)).
Я хочу добиться поведения, когда при удалении заказа (строки из таблицы orders) удаляются пожелания всех пользователей, которые его желали (связанные строки из users_wishes). Для этого я собираюсь использовать такое ограничение: ALTER TABLE users_wishes ADD CONSTRAINT some_fk FOREIGN KEY (order_id) REFERENCES orders (id) ON DELETE CASCADE.
Правильно ли я понимаю, что для достижения максимальной скорости удаления связанных строк из users_wishes, мне следует поменять поля user_id и order_id местами, чтобы использовался первичный ключ?
Да правильно. Но можно и как правило нужно создать ещё один индекс, по order id
Обсуждают сегодня