Инфологический уровень проектирования представляет собой создание информационно-логической модели (ИЛМ) предметной области, из которой исключены избыточность, неполнота и противоречивость данных, возможно, присутствующие во внешнем описании предметной области. Для этих целей естественные человеческие языки в чистом виде использованы быть не могут из-за сложности компьютерной обработки текстов и неоднозначности любого естественного языка. Поэтому используются специальные языки формального описания ИЛМ – язык информационно-логического моделирования (ЯИМ) и диаграммы «сущность-связь» (ERD). Но по-прежнему инфологический уровень является человеко-ориентированным и полностью не зависит от параметров среды хранения данных (компьютерных программ и самих компьютеров). Наиболее часто на инфологическом уровне используется модель данных «сущность-связь» или ER-модель.
Инфологическая модель типа «сущность-связь» представляет предметную область в виде совокупности сущностей, связанных друг с другом и обладающих определенным набором свойств.
Сущность- именованное множество любых различимых однотипных объектов предметной области, информацию о которых необходимо хранить в базе данных. Сущности могут быть реальными объектами (такими как СТУДЕНТ или ТОВАР) или неосязаемыми абстракциями (например, РЫНОК). Следует различать такие понятия, как тип сущности и экземпляр сущности. Тип сущности – множество объектов реального мира с одинаковыми свойствами. Например, типом сущности может быть ГОРОД, а конкретными экземплярами этой сущности – города Москва, Киев и т.д. В случаях, где разница между типом сущности и ее экземпляром очевидна, вместо термина «тип сущности» часто используют термин «сущность». Таким образом, сущность имеет следующие признаки:
· уникальное в рамках предметной области имя;
· набор атрибутов;
· экземпляры сущности отличимы, т.е. могут быть уникально идентифицированы.
Атрибут – поименованная характеристика сущности. Наименование атрибута должно быть уникально в пределах сущности, но может совпадать для разных – например, атрибут ЦВЕТ может быть у сущностей СОБАКА, АВТОМОБИЛЬ, ДЫМ и т.д. Здесь также существует различие между типом и экземпляром: тип ЦВЕТ может иметь значения Красный, Синий и т.д. Абсолютной разницы между понятиями сущность и атрибут не существует: атрибут некоторой сущности в других условиях может выступать в качестве сущности (например, ЦВЕТ может быть атрибутом сущности АВТОМОБИЛЬ, но в программе - графическом редакторе Photoshop выступать как сущность с атрибутами ГЛУБИНА, НАСЫЩЕННОСТЬ и т.д.).
Множество из одного или нескольких атрибутов, значения которых однозначно определяют каждый экземпляр сущности, называется ключом или идентификатором. Ключей у сущности может быть несколько, но выполняет роль идентификатора только один, он называется первичным ключом.
Роль атрибута может быть следующей: описание свойства сущности (атрибут ДОЛЖНОСТЬ сущности СОТРУДНИК), идентификация экземпляра сущности (атрибут ТАБЕЛЬНЫЙ НОМЕР сущности СОТРУДНИК), связь с другой сущностью (атрибут КОД КАФЕДРЫ сущности ПРЕПОДАВАТЕЛЬ).
Атрибут сущности обладает следующими свойствами:
· имеет имя;
· имеет область допустимых значений (домен), откуда выбираются значения атрибута для конкретного экземпляра сущности;
· имеет единственное значение для конкретного экземпляра сущности.
Атрибуты должны именоваться в единственном числе и иметь четкое смысловое значение.
Связь- отношение между двумя сущностями; всегда задается глаголом. Пример 1: сущность КЛИЕНТ имеет связь с сущностью БАНКОВСКИЙ СЧЕТ, которая задается глаголом ИМЕЕТ; СТУДЕНТ-СДАЕТ-ЭКЗАМЕН и т.д. Характер отношений между сущностями определяется свойствами связи. Свойство мощность связи определяет число экземпляров сущности, с которыми может быть установлена связь. Обычно выделяют связи типа «один-к-одному» (1:1), «один-ко-многим» (1:М) и «многие-ко-многим» (M:N). Последние в реляционной модели непосредственно отражены быть не могут и должны быть сведены к связям типа 1:М путем введения дополнительных сущностей-посредников (ассоциаций).
Пример 2: определение типа связи. Сущность ПАССАЖИР связана с сущностью БИЛЕТ следующим образом: а) каждый ПАССАЖИР может иметь один или несколько БИЛЕТОВ, б) каждый БИЛЕТ предназначен для одного и только одного ПАССАЖИРА. Из этого можно заключить, что сущность ПАССАЖИР связана с сущностью БИЛЕТ связью типа 1:М. Пример 3: разбиение связи типа M:N. Сущность ГРУППА связана с сущностью ПРЕПОДАВАТЕЛЬ следующим образом: а) каждый ПРЕПОДАВАТЕЛЬ во время сессии может принимать экзамен у многих ГРУПП, б) каждая ГРУППА во время сессии сдает экзамены многим ПРЕПОДАВАТЕЛЯМ. Следовательно, связь между сущностями ПРЕПОДАВАТЕЛЬ и ГРУППА во время сессии носит характер M:N. Введя сущность-ассоциацию ЭКЗАМЕН можно разбить эту связь на две типа 1:М – ГРУППА-ЭКЗАМЕН типа 1:М (группа сдает много экзаменов, но отдельно взятый экзамен сдает только одна группа) и ПРЕПОДАВАТЕЛЬ-ЭКЗАМЕН типа 1:М (преподаватель принимает много экзаменов, но отдельно взятый экзамен принимает только один преподаватель).