2012-06-27 4 views
0

Сегодня у меня есть эта структура ...же Ф.К. в разных таблицах hierarchally

tableA.id

tableB.id tableB.tableAId (Ф.К.)

tableC.id tableC.tableBId (fk)

Правильно ли я помещал fk в tableC, ссылаясь на таблицу A? Если я этого не сделаю, мне нужно присоединиться к tableC с tableB, чтобы перейти к tableA. Я говорю, чтобы избегать объединений и собираюсь делать все с хорошими оценками.

+0

В объединениях нет ничего плохого, базы данных предназначены для эффективного использования объединений, если вы правильно индексируете. Не денормализуйте, если у вас нет проблемы с производительностью, потому что вы можете получить хитрость данных, если вы не ставите триггеры на место, чтобы сохранить все ссылки одинаковыми. – HLGEM

ответ

0

Несколько внешних ключей ни в коем случае не являются плохими. Если между таблицей A и таблицей C существует отношение, и вам нужно будет вытащить данные, которые относятся к обоим, без необходимости в таблице B, наличие внешнего ключа между A-C отлично!

Смежные вопросы