Связи между наборами объектов и их типы
Пусть имеется n наборов объектов Е1, Е2, … , Еn.
Связью называется множество последовательностей объектов (еi1, еi2,…, еin), где еi1 Î Е1, еi2 Î Е2, …, еin Î Еn.
С помощью связей наборы объектов объединяются в единую информационную структуру.
Между двумя наборами объектов (n=2) различают три типа связей:
1. один к одному ( 1:1 );
2. один ко многим ( 1:М );
3. много ко многим ( М:N ).
Связь между двумя наборами Е1 и Е2 относится к типу «один к одному», если для каждого объекта из первого набора можно указать 0 или 1 объект из второго набора и для каждого объекта из второго набора можно указать 0 или 1 объект из первого набора.
Примерами связей типа 1:1 служат связи между:
· студентами и зачетными книжками,
· между государствами и валютами,
· между офицерами и табельным оружием,
· между гражданами и заграничными паспортами. У каждого студента или нет зачетной книжки, или есть только одна.
Для каждой зачетки или студент не указан, или имеется только один.
Связь между двумя наборами Е1 и Е2 относится к типу «один ко многим», если для каждого объекта из первого набора можно указать 0 или более объектов из второго набора и для каждого объекта из второго набора можно указать 0 или 1 объект из первого набора.
Примерами связей 1:М служат связи между
· банками и вкладами,
· вкладами и взносами,
· между группами и студентами,
· между отделами и сотрудниками,
· между ведомостями и строками ведомостей,
· между клиентами и заявками.
В каждом банке или нет вкладов (банк еще не открылся) или может быть много вкладов. Для каждого вклада или банк не указан, или есть только один.
Связь между двумя наборами Е1 и Е2 относится к типу «многие ко многим», если для каждого объекта из первого набора можно указать 0 или более объектов из второго набора и для каждого объекта из второго набора можно указать 0 или более объектов из первого набора.
Примерами связей M:N служат связи между
· продуктами и странами,
· между студентами и дисциплинами,
· между сотрудниками и проектами,
· между заявками и товарами,
· между магазинами и покупателями.
Каждый продукт может поставляться из многих стран и не поставляться вовсе. Каждая страна может поставлять много продуктов и не поставлять никаких.
Графически связи изображаются стрелками (рис.4.5).
В реальных СУБД реализуется только один тип связи – один ко многим.
Связь 1:1 получается из связи 1:М путем ее ограничения.
Для реализации связи М:N вводится новый набор объектов и используются две связи 1:М.
Например, связь между странами и продуктами типа M:N получается с помощью набора данных «поставки» (рис.4.6).
M : N Страны Продукты 1 : М 1 : М Поставки Рис.4.6. Реализация связи M : N. |
связь М:1 это связь 1:М.
Модель данных
Модель данных – это совокупность трех групп логических правил:
- описание структуры данных,
- правила целостности и непротиворечивости данных,
- операции манипулирования с данными.
Существует три вида моделей данных: иерархическая, сетевая, реляционная.