Должны ли таблицы «многие ко многим» иметь первичный ключ?

Если у меня есть два объекта, которые связаны отношениями" многие ко многим ", я обычно моделирую их в своей схеме базы данных с помощью таблицы" многие ко многим " связать эти два. Но должна ли эта таблица "многие ко многим" (или "таблица соединения") иметь собственный первичный ключ (целое число с автоинкрементом)?

Например, у меня могут быть таблицы A и B, каждая с идентификатором, и таблица с именем A_B, имеющая кортеж внешнего ключа (A_ID, B_ID). Но должен ли A_B иметь собственный столбец идентификатора с автоинкрементом первичного ключа или нет?

Каковы преимущества и недостатки его добавления? Мне лично нравятся естественные ключи для соединений "многие ко многим". Но какие дополнительные преимущества добавил бы первичный ключ?

28
задан ashes999 21 December 2010 в 21:00
поделиться