У меня есть таблица с составным первичным ключом (состоящим из 4 столбцов), который используется для того, чтобы в таблицу не вводились дубликаты. Теперь мне нужна новая таблица, которая должна ссылаться на ключи в этой таблице как на внешние ключи.
Мой вопрос в том, какой подход более эффективен для скорости поиска:
1) Создать ли новую таблицу, включающую все 4 столбца, и ссылаться на них во внешнем ключе.
или
2) Создать ли новый столбец идентификаторов в таблице первичного ключа и использовать его в качестве внешнего ключа в новой таблице.
Предполагается, что эта база данных будет содержать очень большой объем данных, поэтому я создал ее до сих пор с целью минимизации объема данных, содержащихся в каждой таблице. Имея это в виду, вариант 2 будет лучшим подходом, так как я буду сохранять 2 столбца int и столбец datetime для каждой строки, но я хочу избежать увеличения времени поиска, если в этом нет необходимости.
INT IDENTITY
) в таком случае - сделать ссылки на эту таблицу и присоединиться к ней просто так намного проще. Чтобы избежать дублирования, наложите уникальное ограничение на эти четыре столбца. Кроме того: узкие первичные ключи намного лучше по соображениям производительности (если они используются в качестве ключа кластеризации)