Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК_Информатика-344 готовый.doc
Скачиваний:
44
Добавлен:
30.04.2019
Размер:
4.96 Mб
Скачать

§ 7.5. Информационно-логическая модель базы данных

Для создания базы данных и дальнейшей работы с ней первоначально необходимо определить ее логическую структуру, то есть состав таблиц и связи между ними, а затем построить информационно-логическую модель. Она отображает данные предметной области в виде совокупности информационных объектов и связей между ними. Эта модель представляет структуру данных, подлежащих хранению в базе данных.

Информационный объект (ИО) – это информационное описание некоторой сущности предметной области, представляющее совокупность логически связанных реквизитов, отражающих качественные и количественные характеристики сущности. ИО имеет множество реализаций – экземпляров.

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

Совокупность реквизитов информационного объекта должна отвечать требованиям нормализации:

  • ИО должен обязательно содержать уникальный идентификатор (ключ);

  • простой ключ состоит из одного ключевого реквизита, а составной – из нескольких;

  • все реквизиты, входящие в составной ключ, должны быть взаимно независимы, то есть между ними не должно быть функциональных связей;

  • все описательные реквизиты также должны быть взаимно независимы;

  • каждый описательный реквизит функционально должен полностью зависеть от ключа, то есть каждому значению ключа должно соответствовать только одно значение описательного реквизита;

  • при составном ключе описательный реквизит должен зависеть целиком от всей совокупности реквизитов, образующих ключ;

  • каждый описательный реквизит не должен зависеть от ключа транзитивно, то есть через другой промежуточный реквизит.

Выполнение требований нормализации обеспечивает построение реляционной базы без дублирования данных и возможность поддержания их связной целостности. Обеспечение целостности данных подразумевает наличие средств, позволяющих удостовериться, что информация в базе данных всегда остается корректной и полной. Целостность данных должна обеспечиваться независимо от того, каким образом данные заносятся в память (в интерактивном режиме, посредством импорта или с помощью специальной программы).

После выявления информационных объектов между ними устанавливаются связи, характеризующиеся групповыми отношениями одного из трех видов:

  • один-к-одному (1:1) – такая связь имеет место в том случае, когда каждому экземпляру одного объекта соответствует только один экземпляр второго объекта, и, наоборот, каждому экземпляру второго объекта соответствует только один экземпляр первого объекта (например, в каждый момент времени одному клиенту соответствует только один номер в гостинице). Этот тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Такую связь используют для разделения очень широких таблиц, например, для разделения таблицы с информацией о работниках на две: служебной и личной информацией;

  • один-ко-многим (1:М) – такая связь имеет место в том случае, когда каждому экземпляру одного объекта может соответствовать несколько экземпляров другого объекта, а каждому экземпляру второго объекта соответствует только один экземпляр первого объекта (например, в каждом городе может быть несколько районов, но при этом каждый район находится только в одном городе). Это наиболее часто используемый тип связи между таблицами. В такой связи имеет место иерархическая подчиненность, когда первый объект является главным, а второй подчиненным;

  • многие-ко-многим (М:М) – такая связь имеет место в том случае, когда каждому экземпляру одного объекта может соответствовать несколько экземпляров второго объекта, а каждому экземпляру второго объекта может соответствовать несколько экземпляров первого объекта (например, один поставщик может продавать несколько разных товаров, и в то же время один и тот же товар могут реализовывать многие поставщики). Такие связи не поддерживаются в реляционной базе данных, поэтому они реализуются с помощью третьей (связующей) таблицы, ключ которой состоит, по крайней мере, из двух полей, которые являются полями внешнего ключа в исходных таблицах.