
Основные этапы проектирования баз данных
1. Концептуальное проектирование
2. Логическое проектирование – процесс создания модели используемой на предприятии информации на основе выбранной модели организации данных, но без учета целевой СУБД и других физических аспектов реализации.
3. Физическое проектирование – процесс подготовки описания реализации БД на вторично запоминающих устройствах. На этом этапе рассматриваются основные отношения организации файлов и индексов, предназначенных для обеспечения эффективного доступа к данным, а также все связанные с этим ограничения целостности и средства защиты. Физическое проектирование неразрывно связано с конкретной СУБД. Основной целью физического проектирования БД является описание способов физической реализации логического проекта БД средствами выбранной целевой СУДБ. Между логическим и физическим проектированием существует постоянная обратная связь, так как решение, принимаемое на этапе физического проектирования с целью повышения производительности системы способны повлиять на структуру логической модели данных.
ER – модель сущность-связь. Выбор целевой СУДБ между К(1) и Л(2).
Модель сущность-связь er
Тип сущности – группа объектов с одинаковыми свойствами, которая рассматривается в конкретной предметной области как имеющая независимое существование.
Тип сущности может быть объектом с физическим (реальным) существованием или объектом с концептуальным (абстрактным) существованием. Пример типа сущности – студент, дисциплина, продажа, аттестация т.д.
Экземпляр сущности – однозначно-идентифицируемый объект, который относится к сущности определенного типа. Тип и экземпляр сущности связаны как тип данных и переменная в языках программирования.
UML - унифицированный язык моделирования.
Каждый тип сущности изображается в виде прямоугольника с именем сущности внутри него. В качестве имени обычно применяется существительное в единственном числе.
Студент |
|
|
Тип связи – набор осмысленных ассоциаций между сущностями разных типов. Каждому типу связи присваивается имя, которое должно описывать его назначение.
Экземпляр связи – однозначно-идентифицируемая ассоциация, которая включает по одному экземпляру сущности из каждого участвующего в связи типа сущности.
Каждый тип связи изображается в виде линий, соединяющий соответствующие типы сущности и обозначенные именем этой связи (обычно глагол). На схеме должно быть показано направления действия каждой связи. Поскольку на обычно имеет смысл только одно направление этой связи.
Характеристики типов связи:
Степень типа связи – количество типов сущностей, которые охвачены данной связью. На практике чаще всего встречаются связи со степенью 2, то есть двухсторонние.
Для описания связей со степенью больше 2 принято применять термин сложная связь. Наиболее распространенные – трехсторонние.
Для обозначения связей со степенью большей 2 применяются ромбы. Имя связи записывается внутри ромба.
Рекурсивная связь – связь, в которой одни и те же сущности участвуют несколько раз в разных ролях. (Односторонние)
Связям могут присваиваться ролевые имена для указания на значение каждой сущности, участвующие в данной связи. Ролевые имена имеют большое значение в рекурсивных связях, поскольку позволяют определить функции каждого участника. Ролевые имена могут также использоваться, когда 2 сущности связаны несколькими связями.
Атрибут – свойство типа сущности или типа связи
Домен атрибута – набор допустимых значений одного или нескольких атрибутов
__________________
| Студент |
__________________
| ФИО |
| Номер зач. книжки|
| ИНН |
----------------------------
Простой атрибут – атрибут, состоящий из одного компонента с независимым существованием
Составной атрибут – атрибут, состоящий из нескольких компонентов, каждый из которых характеризуется независимым существованием
Составной атрибут – АДРЕС включает в себя (регион, район, город, улица)
Однозначный атрибут – атрибут, который содержит одно значение для каждого экземпляра сущности определенного типа
Многозначный атрибут – атрибут, который содержит несколько значений для каждого экземпляра сущности определенного типа
Многозначный атрибут – номер телефона
Производный атрибут (вычисляемый) – атрибут, который представляет значение производное от значения связанного с ним атрибута или некоторого множества атрибутов, принадлежащих некоторому типу сущности (необязательного данного)
Дата Рождения – однозначный просто атрибут.
Возраст – производный атрибут от атрибута Дата Рождения
Сущность Группа –> производный атрибут Кол-во Студентов
Тип сущности – класс
Настройка Параметры отображения фигуры – Общие параметры ИМЯ, скрыть ОПЕРАЦИИ
Ключ
Потенциальный ключ – атрибут или минимальный набор атрибутов, который однозначно идентифицируют каждый экземпляр типа сущности
Потенциальный ключ не может содержать значение NULL
Первичный ключ – потенциальный ключ, который выбран для однозначной идентификации каждого экземпляра сущности определенного типа
Выбор первичного ключа сущности осуществляется с учетом суммарной длины атрибутов, минимального количество необходимых атрибутов в ключе, а также наличие гарантий уникальности его значений в текущий момент времени и в обозримом будущем
Составной ключ – потенциальный ключ, который состоит из 2 или нескольких атрибутов
AK – альтернативный ключ
PK – потенциальный ключ
PPK – часть потенциального ключа
Сущность сильного типа – тип сущности, существование которого не зависит от какого-то другого типа сущности. Характерной особенностью сильного типа является то, что каждый экземпляр сущности может быть однозначно идентифицирован с помощью атрибутов первичного ключа сущности этого типа
Сущность слабого типа – тип сущности, существование которого зависит от какого-то другого типа сущности.
Для отображения атрибутов, относящихся к типу связи, применяется такое же условное обозначение, как и для типа сущности. Тем не менее, чтобы подчеркнуть различие между сущностью и связью, линия, которая соединяет прямоугольник с атрибутами и саму связь, отображается как штриховая
Если на схеме появляется связь с одними или несколькими атрибутами, это может свидетельствовать о том, что за этой связью скрывается не выявленный тип сущности