
- •Конспекты лекций.
- •1.Понятие информатизации.
- •2. Понятие об информационной технологии.
- •3. Понятие информационной системы и базы данных.
- •1. Информационная база
- •2. Лингвистические средства
- •3. Программные средства
- •Библиотеки и процессор языка базы данных
- •Ядро базы данных
- •4. Технические средства
- •5. Организационно-административные подсистемы
- •6. Пользователи баз данных
- •1. Субд и ее функции.
- •2. Принципы организации бд.
- •3.Типология баз данных.
- •Модели баз данных.
- •Реляционная модель данных.
- •Основы реляционной алгебры.
- •Нормализация баз данных.
- •Этапы проектирования баз данных.
- •1. Этапы проектирования баз данных
- •2 Проектирование базы данных на основе модели типа объект—отношение
- •Лекция 10 (Базы данных) использование субд access для создания баз данных
- •1. Основные характеристики и возможности субд Access
- •2. Основные компоненты субд Access
- •3. Типы данных субд Access
- •Лекция 11 (Базы данных) создание таблиц в субд access
- •1. Создание новой базы данных
- •2. Создание таблиц в субд Access
- •Лекция 12 (Базы данных)
- •1. Схема данных в Access
- •2. Модификация структуры базы данных
- •Лекция 13 (Базы данных) обработка данных в базе (Запросы)
- •1. Запросы в субд Access
- •2. Основы конструирования запросов
- •3. Условия отбора записей, сортировка и фильтрация данных
- •Лекция 14 (Базы данных) элементы языка sql и запросы в форме sql.
- •1. Изменение данных в бд средствами запроса
- •2. Операторы языка sql для работы с реляционной базой данных
- •2.1 Создание реляционных таблиц.
- •2.2. Изменение структуры таблиц.
- •2.3. Удаление таблицы.
- •2.4. Ввод данных в таблицу.
- •2.5. Операции соединения таблиц.
- •2.6. Удаление записей в таблице.
- •2.7. Обновление (замена) значений полей записи.
- •Лекция 15 (Базы данных) запросы в форме sql.
- •1. Организация запросов в форме sql.
- •Лекция 16 (Базы данных) формы — диалоговый графический интерфейс для работы пользователя с базой данных.
- •1. Основы создания формы
- •2. Элементы управления.
- •Лекция 17 (Базы данных) формы (продолжение) и отчеты.
- •1. Загрузка, просмотр и корректировка данных базы с использованием форм.
- •2. Разработка многотабличных форм.
- •3. Разработка отчетов.
2 Проектирование базы данных на основе модели типа объект—отношение
Имеется целый ряд методик создания информационно-логических моделей. Одна из наиболее популярных в настоящее время методик при разработке моделей использует ERD (Entity-Relationship Diagrams). В русскоязычной литературе эти диаграммы называют «объект — отношение» либо «сущность — связь». Модель ERD была предложена Питером Пин Шен Ченом в 1976 г. К настоящему времени разработано несколько ее разновидностей, но все они базируются на графических диаграммах, предложенных Ченом. Диаграммы конструируются из небольшого числа компонентов. Благодаря наглядности представления они широко используются в CASE-средствах (Computer Aided Software Engineering).
Рассмотрим используемую терминологию и обозначения.
Сущность (Entity) — реальный либо воображаемый объект, имеющий существенное значение для рассматриваемой предметной области, информация о котором подлежит хранению.
Каждая сущность должна обладать уникальным идентификатором. Каждый экземпляр сущности должен однозначно идентифицироваться и отличаться от всех других экземпляров данного типа (сущности). Каждая сущность должна обладать некоторыми свойствами:
иметь уникальное имя; причем к этому имени должна всегда применяться одна и та же интерпретация (определение сущности). И наоборот: одна и та же интерпретация не может применяться к различным именам, если только они не являются псевдонимами;
обладать одним или несколькими атрибутами, которые либо принадлежат сущности, либо наследуются ею через связь;
обладать одним или несколькими атрибутами, которые однозначно идентифицируют каждый экземпляр сущности.
Сущность может быть независимой либо зависимой. Признаком зависимой сущности служит наличие у нее наследуемых через связь атрибутов (рис. 1.).
К
Рис.
1. Графическое обозначение сущностей:
А — зависимая, В — независимая сущность
Связь (Relationship) — поименованная ассоциация между двумя сущностями, значимая для рассматриваемой предметной области. Одна из участвующих в связи сущностей — независимая, называется родительской сущностью, другая — зависимая, называется дочерней или сущностью-потомком. Как правило, каждый экземпляр родительской сущности ассоциирован с произвольным (в том числе нулевым) количеством экземпляров дочерней сущности. Каждый экземпляр сущности-потомка ассоциирован в точности с одним экземпляром сущности-родителя. Таким образом, экземпляр сущности-потомка может существовать только при существовании сущности-родителя.
Связи дается имя, выражаемое
грамматическим оборотом глагола и
помещаемое возле линии связи. Имя каждой
с
вязи
между двумя данными сущностями должно
быть уникальным, но имена связей в модели
не обязаны быть уникальными. Каждая
связь имеет определение. Определение
связи образуют соединением имени
сущности-родителя, имени связи, выражения
степени связи и имени сущности-потомка.
Н
Рис. 2. Графическое
изображение связей
продавец может получить вознаграждение за один или более Контрактов;
контракт должен быть инициирован ровно одним Продавцом.
На диаграмме связь изображается отрезком (ломаной). Концы отрезка с помощью специальных обозначений (рис. 2) указывают степень связи. Кроме того, характер линии — штриховая или сплошная, указывает обязательность связи.
Атрибут — любая характеристика сущности, значимая для рассматриваемой предметной области. Он предназначен для квалификации, идентификации, классификации, количественной характеристики или выражения состояния сущности. Атрибут представляет тип характеристик (свойств), ассоциированных с множеством реальных или абстрактных объектов (людей, мест, событий, состояний, идей, пар предметов и т. д.) (рис. 3). Экземпляр атрибута — это определенная характеристика конкретного экземпляра сущности. Экземпляр атрибута определяется типом характеристики (например, «Цвет») и ее значением (например, «лиловый»), называемым значением атрибута. В ER-модели атрибуты ассоциируются с конкретными сущностями. Каждый экземпляр сущности должен обладать одним конкретным значением для каждого своего атрибута.
А
Рис. 3. Графическое
отображение характеристики атрибута
Уникальный идентификатор — это атрибут или совокупность атрибутов и/или связей, однозначно характеризующая каждый экземпляр данного типа сущности. В случае полной идентификации экземпляр данного типа сущности полностью идентифицируется своими собственными ключевыми атрибутами, в противном случае в идентификации участвуют также атрибуты другой сущности — родителя.
Характер идентификации отображается в диаграмме на линии связи (рис. 4).
К
Рис. 4. Графическое
отображение характера идентификации
Каждая сущность должна обладать хотя бы одним возможным ключом. Возможный ключ сущности — это один или несколько атрибутов, чьи значения однозначно определяют каждый экземпляр сущности. При существовании нескольких возможных ключей один из них обозначается в качестве первичного ключа, а остальные — как альтернативные ключи.
В настоящее время на основе подхода Чена создана методология IDEF1X, которая разработана с учетом таких требований, как простота изучения и возможность автоматизации. IDEFlX-диаграммы используются рядом распространенных CASE-средств (в частности, ERwin, Design/IDEF).
С
Рис.
5. Графическое изображение сущностей
и связей
Каждой сущности присваивается уникальное имя и номер, разделяемые косой чертой «/» и помещаемые над блоком.
Если экземпляр сущности-потомка однозначно определяется своей связью с сущностью-родителем, то связь называется идентифицирующей, в противном случае — неидентифицируюшей.
Идентифицирующая связь между сущностью-родителем и сущностью-потомком изображается сплошной линией. На рис. 5: №2 — зависимая сущность, Связь 1 — идентифицирующая связь. Сущность-потомок в идентифицирующей связи является зависимой от идентификатора сущностью. Сущность-родитель в идентифицирующей связи может быть как независимой, так и зависимой от идентификатора сущностью (это определяется ее связями с другими сущностями).
Штриховая линия изображает неидентифицирующую связь. На рис. 5: №4 — независимая сущность, Связь 2 — неидентифицирующая связь. Сущность-потомок в неидентифицируюшей связи будет независимой от идентификатора, если она не является также сущностью-потомком в какой-либо идентифицирующей связи.
Связь может дополнительно определяться с помощью указания степени или мощности (количества экземпляров сущности-потомка, которое может существовать для каждого экземпляра сущности-родителя). В IDEF1X могут быть выражены следующие мощности связей:
каждый экземпляр сущности-родителя может иметь ноль, один или более связанных с ним экземпляров сущности-потомка;
каждый экземпляр сущности-родителя должен иметь не менее одного связанного с ним экземпляра сущности-потомка;
каждый экземпляр сущности-родителя должен иметь не более одного связанного с ним экземпляра сущности-потомка;
каждый экземпляр сущности-родителя связан с некоторым фиксированным числом экземпляров сущности-потомка.
М
ощность
связи обозначается, как показано на
рис. 6 (мощность по умолчанию —
N).
А
Рис
6. Мощность связи
трибуты
изображаются в виде списка имен внутри
блока сущности. Атрибуты, определяющие
первичный ключ, размещаются наверху
списка и отделяются от других атрибутов
горизонтальной чертой (рис. 7).
С
Рис. 7. Атрибуты
и первичные ключи
В результате получается информационно-логическая модель, которая используется рядом распространенных CASE-средств, таких, как ERwin, Design/IDEF. В свою очередь, CASE-технологии имеют высокие потенциальные возможности при разработке баз данных и информационных систем, а именно, увеличение производительности труда, улучшение качества программных продуктов, поддержка унифицированного и согласованного стиля работы.