Достаточно ли ключа индекса или нужно добавить внешний ключ

Я не уверен, должен ли я добавить внешний ключ в свою таблицу, поскольку сейчас я использую только индексный ключ в INNER JOINS.

Например: у меня есть 4 таблицы.

Ad> первичный ключ ad_id

Пользователь> первичный ключ Идентификатор пользователя

Состояние> первичный ключ state_id

Город> первичный ключ CITY_ID

На моем рекламном столе.

Каждое объявление имеет seller_id и buyer_id, эти строки внутренне присоединяются к пользовательской таблице в строке пользовательских таблиц Идентификатор пользователя который является первичным ключом в этой таблице.

Каждое объявление также имеет state_id а также CITY_ID это внутреннее соединение с таблицей города / штата, где эти строки являются первичными ключами.

На данный момент я установил только эти поля в моей таблице Ad в качестве ключей индекса, после чего эти ключи индекса будут внутренним соединением с первичным ключом в другой таблице. Должен ли я также установить эти индексные ключи в таблице объявлений как внешние ключи?

Спасибо

0

Решение

Внешние ключи напоминают отношения один ко многим. Это не то, что у вас здесь.

Вы должны добавить индексы к столбцам, которые участвуют в предложениях WHERE, помимо ваших JOIN по первичным ключам.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]