Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Работа.doc
Скачиваний:
4
Добавлен:
16.04.2019
Размер:
1.46 Mб
Скачать

2. Проектирование информационной системы

2.1. Построение инфологической модели

В описании предметной области легко выделить следующие информационные объекты: Марка, Автомобиль, Водитель, Путевой лист. Отобразим эти объекты на диаграмме «сущность-связь», выявим и изобразим на диаграмме связи между объектами, а также атрибуты объектов. Атрибуты, уникальные в пределах данного информационного объекта, выделим подчеркиванием. Полученная диаграмма показана на рис. 1.

Рис. 1. Диаграмма «сущность–связь»

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

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

  • каждый водитель закреплен за одним определенным автомобилем, хотя за каждым автомобилем может быть закреплено более одного водителя;

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

Отметим, что объект «Путевой лист» связывается как с объектом Водитель, так и с объектом Автомобиль. Это необходимо, потому что хотя водитель всегда закрепляется за одним определенным автомобилем, но 1) он может со временем быть переведен на другой автомобиль; 2) он может даже без изменения закрепления выезжать в рейс на «чужом» автомобиле. Вследствие этого в путевом листе должна храниться информация об автомобиле, хотя, в обычной ситуации, водитель и будет выезжать в рейс на том автомобиле, за которым он закреплен.

2.2. Описание информационных объектов

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

Вначале преобразуем объект Марка, поскольку он участвует в единственной связи типа «один ко многим», причем на стороне «один». Атрибут Марка этого объекта является уникальным. Название марки (точнее, модели) автомобиля может выражаться достаточно длинной строкой, поэтому в качестве первичного ключа реляционной таблицы более целесообразно использовать не саму эту строку, а некоторое кодовое значение. Введем такое кодовое поле в состав таблицы и сделаем его первичным ключом этой таблицы:

МАРКА (КодМарки, Марка, Мест, Грузоподъемность, Кузов, Расход, ПериодТО)

Для организации связи между таблицами Марка и Автомобиль в состав последней следует включить первичный ключ таблицы Марка, который будет играть роль ключа связи. Такое поле в составе таблицы Автомобиль называется внешним ключом:

АВТОМОБИЛЬ (Гос№, КодМарки, Год, Цвет, Капремонт, Техосмотр)

Внешний ключ КодМарки ссылается на МАРКА

Аналогичным образом реализуется связь и между таблицами Водитель и Автомобиль: в состав таблицы Водитель вводится первичный ключ таблицы Автомобиль. Первичным ключом самой таблицы Водитель сделаем кодовое поле (как при создании таблицы Марка), поскольку поле ФИО, во-первых, теоретически допускает повторы (два разных водителя, являющиеся полными тезками), а во-вторых — слишком длинное для ключа:

ВОДИТЕЛЬ (КодВодителя, ФИО, ДатаРожд, Категория, НачСтажа, Гос№)

Внешний ключ Гос№ ссылается на АВТОМОБИЛЬ

В таблицу «Путевой лист», в соответствии с методикой преобразования, следует ввести первичные ключи таблиц Автомобиль и Водитель. В результате получим следующую схему:

ПУТЕВОЙ_ЛИСТ (, Дата, КодВодителя, Гос№, Выезд, Возвращение, СпидВыезд, СпидВозвр, Расход, Выручка)

Внешние ключи: КодВодителя ссылается на ВОДИТЕЛЬ, Гос№ ссылается на АВТОМОБИЛЬ

Итак, мы получили реляционную схему данных рассматриваемой предметно области. Метод, использованный нами для преобразования концептуальной модели в реляционную, гарантирует, что все реляционные таблицы будут соответствовать третьей нормальной форме.