Это простой пример классического примера заказа. Каждый Клиент может иметь несколько Заказ с, и каждый Заказ может состоять из нескольких OrderLine с.
Вы создаете отношение, добавляя столбец внешний ключ . Каждая запись заказа содержит идентификатор клиента, который указывает на идентификатор клиента. Точно так же каждая OrderLine имеет значение OrderID. Вот так выглядит схема базы данных:
![enter image description here](https://i.stack.imgur.com/y7gjY.png)
На этой диаграмме есть фактические ограничения внешнего ключа . Они не являются обязательными, но они обеспечивают целостность ваших данных. Кроме того, они делают структуру вашей базы данных более понятной для всех, кто ее использует.
Полагаю, вы знаете, как создавать таблицы самостоятельно. Тогда вам просто нужно определить отношения между ними. Конечно, вы можете определить ограничения в T-SQL (опубликованные несколькими людьми), но они также легко добавляются с помощью дизайнера. Используя SQL Management Studio, вы можете щелкнуть правой кнопкой мыши по таблице Order , щелкнуть по Design (я думаю, что это может называться Edit под 2005). Затем в любом месте окна, которое открывается правой кнопкой мыши, выберите Отношения .
.
Вы получите еще одно диалоговое окно, справа должен быть вид сетки. Одна из первых строк гласит: « Спецификация таблиц и столбцов ». Нажмите на эту строку, затем снова нажмите на маленькую кнопку [...], которая появляется справа. Вы получите этот диалог:
![Foreign key constraint](https://i.stack.imgur.com/lWPmd.png)
Таблица Order уже должна быть выбрана справа. Выберите таблицу Customer в раскрывающемся списке слева. Затем в левой сетке выберите столбец ID
. В правой сетке выберите столбец CustomerID
. Закройте диалог, и следующий. Нажмите Ctrl + S , чтобы сохранить.
Наличие этого ограничения гарантирует, что никакие записи Заказа не могут существовать без сопровождающей записи Клиента.
Для эффективного запроса к базе данных, подобной этой, вы можете прочитать о JOIN .