Отображение связей «многие ко многим» (Визуальные инструменты для баз данных)

Связи "многие ко многим" позволяют связывать каждую строку в одной таблице со многими строками в другой таблице и наоборот. Например, можно создать связь "многие ко многим" между authors таблицей и titles таблицей, чтобы связать каждого автора со всеми его книгами и каждую книгу со всеми её авторами. Создание отношения "один ко многим" из любой таблицы будет неправильно указывать на то, что каждая книга может иметь только одного автора или что каждый автор может писать только одну книгу.

Связи "многие ко многим" между таблицами реализуются в базах данных с помощью таблиц связей. Таблица соединения содержит первичные ключевые столбцы двух таблиц, которые необходимо связать. Затем вы создадите связь из столбцов первичного ключа каждой из этих двух таблиц с соответствующими столбцами в таблице связи. В базе данных pubs таблица titleauthor — это связывающая таблица.

Для создания связи "многие ко многим" между таблицами

  1. В схеме базы данных добавьте таблицы, между которыми вы хотите создать взаимосвязь "многие ко многим".

  2. Создайте третью таблицу, щелкнув правой кнопкой мыши по диаграмме и выбрав в контекстном меню пункт "Создать таблицу". Это станет таблицей соединений.

  3. В диалоговом окне Выбор имени измените имя таблицы, назначенное системой. Например, таблица соединения между таблицей titles и таблицей authors теперь называется titleauthors.

  4. Скопируйте столбцы первичного ключа из каждой из двух других таблиц в таблицу соединения. Другие столбцы можно добавить в эту таблицу так же, как и в любую другую таблицу.

  5. В таблице соединения задайте первичный ключ, чтобы включить все столбцы первичного ключа из других двух таблиц. Дополнительные сведения см. в разделе "Создание первичных ключей".

  6. Определите связь "один ко многим" для каждой из двух основных таблиц и промежуточной таблицы. Таблица соединения должна располагаться на стороне "многие" обоих создаваемых связей. Дополнительные сведения см. в разделе "Создание связей внешнего ключа".

    Замечание

    Создание таблицы соединения на схеме базы данных не вставляет данные из связанных таблиц в таблицу соединения. Для получения информации о вставке данных в таблицу см. Создание запросов на вставку результатов (Инструменты визуальной базы данных).

См. также

Работа с диаграммами баз данных (визуальными инструментами баз данных)