Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Базы данных ( 2012).doc
Скачиваний:
6
Добавлен:
25.11.2019
Размер:
1.98 Mб
Скачать

Операция связывания

Суть операции связывания состоит в том, что из двух связанных между собой таблиц может быть получена третья таблица, в которой будут объединены поля из записей двух первых таблиц для тех записей, в которых совпадают значения полей, выбранных для связи. В зависимости от того, как соотносятся в таблицах ключевые поля (первичные ключи) и поля связи, различают связи "один к одному" (1:1), "один ко многим"(1:M или 1 : ) и "многие ко многим" (M:N или  :  ).

Связь вида 1:1

Связь вида 1:1 образуется, когда поля связи основной и подчиненной таблицы являются ключевыми. Поскольку значения ключевых полей обеих таблиц не повторяются, обеспечивается взаимно-однозначное соответствие записей из этих таблиц. Сами таблицы становятся равнозначными. Фактически связь 1:1 используется в тех случаях, когда имеется одна таблица, в которой по каким-либо причинам часть полей используется для одних целей, а часть полей – для других. В этом случае удобно разделить эту таблицу на две и связать их при помощи связи 1:1.

Например, пусть у нас имеется две таблицы R1(Номер, Вес) и R2(Номер, Порт), в каждой из которых поле «Номер» является первичным ключом. Предположим, что эти таблицы имеют записи, представленные на рисунке:

R1

R2

Номер

Вес

Номер

Порт

М1

25

М1

SPB

М2

10

М2

HEL

М3

6

Выполним связывание этих таблиц по полям «Номер». В двух первых записях таблицы R1 значение поля связи совпадает со значениями полей связи в таблице R2, что позволяет при связывании этих отношений получить таблицу вида

Номер

Вес

Порт

М1

25

SPB

М2

10

HEL

Таким образом, при использовании связи 1 : 1 каждой записи одной из таблиц может соответствовать не более одной записи из другой таблицы.

Такой вид связи используется крайне редко, поскольку хранимую в двух таблицах информацию легко можно физически объединить в единственной таблице.

Связь вида 1:м

Связь вида 1 : M может быть установлена в том случае, если одной записи в первой таблице (она называется основной таблицей) соответствует несколько записей во второй таблице (она называется дополнительной таблице).

Для связывания двух таблиц при помощи связи 1 : M необходимо, чтобы в дополнительной таблице было поле (или группа полей), которые бы являлись первичным ключом основной таблицы.

Такое поле (группа полей) называются внешним ключом отношения. В качестве полей связи используются первичный ключ в основной таблице и внешний ключ в дополнительной.

Например, пусть у нас имеется две таблицы R1(Порт, Название) и R2(Номер, Порт, Вес)

R1

R2

Порт

Название

Номер

Порт

Вес

SPB

С-Петербург

М1

SPB

10

HEL

Хельсинки

М2

SPB

12

BRE

Бремен

М3

HEL

11,5

М4

SPB

18,3

В таблице R1 первичным ключом является поле «Порт», а в отношении R2 – поле «Номер».

В качестве полей связи будем использовать поле «Порт» в каждом из отношений.

Таким образом,

R1 – основная таблица

R2- дополнительная таблица

Поле «Порт» - это первичный ключ в таблице R1 и внешний ключ в таблице R2

При связывании таблиц R1 и R2 по этим полям получим связь вида 1 : М. В этом случае каждой записи основной таблицы (R1) может соответствовать ноль, одна или несколько записей в дополнительной таблице (R2).

В данном примере первой записи в R1 (значение поля связи – SPB) соответствует 3 записи в R2. Второй записи в R1 (значение поля связи – HEL) – соответствует только одна запись в R2, а третьей записи в R1 (значение поля связи – BRE) – соответствующих записей в R2 - нет.

Таким образом, в результате связывания получим следующую таблицу:

Номер

Порт

Вес

Название

М1

SPB

10

С-Петербург

М2

SPB

12

С-Петербург

М3

HEL

11,5

Хельсинки

М4

SPB

18,3

С-Петербург

В основном связь вида 1 : М используется в базах данных для подключения к рабочим таблицам справочников. В частности, в лабораторном практикуме таким образом к рабочей таблице «Каргоплан» подключаются таблицы-справочники «Порты», «Опасные грузы» и «Виды грузов».

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]