Инфологическая модель данных
Инфологическая модель реляционной БД – это структурная схема объектов БД – её таблиц и логических связей между таблицами. Слово " инфологическая" происходит от лат. " informatio" - разъяснение, сведения и греч. " logikě " - логика, т.е. инфологическая модель означает информационную модель данных, между которыми установлены логические связи. Массивы данных обычно сводятся в таблицы, а таблицы – в базы данных (БД). Слово " реляционная" происходит от relation (англ.) – отношение, в математических моделях данных отношения изображают в виде таблиц, поэтому БД, состоящая из двумерных таблиц, называется реляционной. Реляционная БД (РБД)состоит из нескольких таблиц, содержащих массивы данных, между таблицами установлены логические связи, которые и объединяют их в единую базу данных. Отношение БД (таблица) состоит из полей (другое название - атрибутов), т.е. столбцов таблицы, и записей (или кортежей), т.е. строк таблицы. Шапка таблицы с названиями полей называется схемой отношения. Связь между таблицами устанавливаются по ключевым атрибутам, которые в Access могут быть трёх типов: простой ключ, составной ключ и внешний ключ. Простой ключ или ключевой атрибут (в русифицированной версии Access – первичный ключ или ключевое поле) должен однозначно идентифицировать (определять) любую запись в таблице БД. Например, поле Фамилия не может быть первичным ключом, т.к. в кортежах БД могут быть люди с одной фамилией, поле Корпус может означать и корпус прибора, и воинское подразделение и т.п., поэтому в качестве первичного выбирают уникальные атрибуты – Табельный номер, шифр изделия, Код дисциплины и т.п. Составной ключ – это первичный ключ, состоящий из нескольких атрибутов, например, по отдельности атрибуты Фамилия и Дата рождения не могут однозначно определить любую запись таблицы, а составной атрибут Фамилия+Дата рождения является уникальным (единственным), так как маловероятно, что в таблице могут иметься две записи с совпадающими значениями этих полей. Внешний ключ – это атрибут, который служит для связи с другими таблицами и имеется во всех таблицах, между которыми устанавливается связи. Обычнотаблица БД имеет один ключевой атрибут (простой или составной) и один или несколько вторичных. Внешним ключом для подчинённой таблицы является первичный ключ. Для задания связи эти поля таблицы должны иметь одинаковые имена или хотя бы одинаковые форматы данных. Одна таблица в БД является основной, родительской, а связанные с ней таблицы – подчинёнными, дочерними, которые, в свою очередь являются основными для своих подчинённых таблиц и т.д. На рис. 1 изображена структура реляционной БД " Факультет", содержащая таблицы Деканат, Кафедры, Преподаватели, Дисциплины, Группы и Студенты.
связь 1: N связь N: M
Рисунок 1 Инфологическая модель реляционной БД " Деканат" Между таблицами БД может быть три вида связей: связь " один к одному", 1: 1, например, между деканатом и факультетом, т.к. у факультета – один деканат, и у деканата – один факультет, связь " один ко многим", 1: N, например, между кафедрой и преподавателями, т.к. у кафедры много преподавателей, а у каждого преподавателя – одна кафедра и связь" многие ко многим", N: M, например, между преподавателями и дисциплинами, т.к. один преподаватель читает несколько дисциплин, и одна дисциплина может читаться несколькими преподавателями. Связи " один к одному " и " один ко многим " легко устанавливаются в Access, а связь " многие ко многим " напрямую не может быть реализована, но фактически она представляет собой две связи типа " один ко многим", поэтому для неё создаётся третья таблица, ключ которой состоит из двух полей, общих для двух таблиц со связью N: M. Таким образом, связь N: M заменяется на ещё одну таблицу, которая связывается с обеими таблицами двумя связями 1: N. В таблице связи, кроме ключевых атрибутов могут быть и другие описательные поля. Например, связь N: M между таблицами-объектами ГРУППА и ДИСЦИПЛИНА реализуется с помощью третьей таблицы с именем ГРУП-ДИСЦ, которые связаны с исходными таблицами связями 1: N (рис. 2).
1 N N 1 Рисунок 2 Замена связи N: M на таблицу с двумя связями 1: N Таким образом, реализация связи " многие ко многим" добавляет в БД ещё один объект – таблицу связи. Логическая модель реляционной БД – это инфологическая БД, в которой каждая её таблица представлена своей схемой – шапкой таблицы и показаны ключевые атрибуты, между которыми установлены логические связи между таблицами.
|