- •Содержание
- •1. Описание предметной области
- •1.1 Назначение информационной системы
- •1.2. Характеристика документов и атрибутов предметной области
- •2. Проектирование информационной системы
- •2.1. Построение инфологической модели
- •2.2. Описание информационных объектов
- •3. Объекты базы данных Microsoft Access
- •3.1. Таблицы
- •3.2. Запросы
- •3.3. Экранные формы ввода и редактирования данных
- •3.4. Отчеты
- •3.5. Макросы
- •3.6. Главная кнопочная форма
- •Список использованной литературы
2. Проектирование информационной системы
2.1. Построение инфологической модели
В описании предметной области легко выделить следующие информационные объекты: Марка, Автомобиль, Водитель, Путевой лист. Отобразим эти объекты на диаграмме «сущность-связь», выявим и изобразим на диаграмме связи между объектами, а также атрибуты объектов. Атрибуты, уникальные в пределах данного информационного объекта, выделим подчеркиванием. Полученная диаграмма показана на рис. 1.
Рис. 1. Диаграмма «сущность–связь»
Возле линий, обозначающих связи между сущностями, указаны мощности этих связей в каждом из направлений. Как видим, все связи между информационными объектами относятся к типу «один ко многим»:
каждый автомобиль относится к одной определенной марке, но одной марке может соответствовать множество автомобилей;
каждый водитель закреплен за одним определенным автомобилем, хотя за каждым автомобилем может быть закреплено более одного водителя;
в каждом путевом листе фигурирует ровно один водитель и ровно один автомобиль, хотя, разумеется, каждый водитель и каждый автомобиль будут встречаться во многих путевых листах.
Отметим, что объект «Путевой лист» связывается как с объектом Водитель, так и с объектом Автомобиль. Это необходимо, потому что хотя водитель всегда закрепляется за одним определенным автомобилем, но 1) он может со временем быть переведен на другой автомобиль; 2) он может даже без изменения закрепления выезжать в рейс на «чужом» автомобиле. Вследствие этого в путевом листе должна храниться информация об автомобиле, хотя, в обычной ситуации, водитель и будет выезжать в рейс на том автомобиле, за которым он закреплен.
2.2. Описание информационных объектов
Преобразуем построенную концептуальную модель в реляционную схему данных. При этом каждому информационному объекту ставится в соответствие реляционная таблица, при определении состава атрибутов которой учитываются связи данного объекта с другими объектами.
Вначале преобразуем объект Марка, поскольку он участвует в единственной связи типа «один ко многим», причем на стороне «один». Атрибут Марка этого объекта является уникальным. Название марки (точнее, модели) автомобиля может выражаться достаточно длинной строкой, поэтому в качестве первичного ключа реляционной таблицы более целесообразно использовать не саму эту строку, а некоторое кодовое значение. Введем такое кодовое поле в состав таблицы и сделаем его первичным ключом этой таблицы:
МАРКА (КодМарки, Марка, Мест, Грузоподъемность, Кузов, Расход, ПериодТО)
Для организации связи между таблицами Марка и Автомобиль в состав последней следует включить первичный ключ таблицы Марка, который будет играть роль ключа связи. Такое поле в составе таблицы Автомобиль называется внешним ключом:
АВТОМОБИЛЬ (Гос№, КодМарки, Год, Цвет, Капремонт, Техосмотр)
Внешний ключ КодМарки ссылается на МАРКА
Аналогичным образом реализуется связь и между таблицами Водитель и Автомобиль: в состав таблицы Водитель вводится первичный ключ таблицы Автомобиль. Первичным ключом самой таблицы Водитель сделаем кодовое поле (как при создании таблицы Марка), поскольку поле ФИО, во-первых, теоретически допускает повторы (два разных водителя, являющиеся полными тезками), а во-вторых — слишком длинное для ключа:
ВОДИТЕЛЬ (КодВодителя, ФИО, ДатаРожд, Категория, НачСтажа, Гос№)
Внешний ключ Гос№ ссылается на АВТОМОБИЛЬ
В таблицу «Путевой лист», в соответствии с методикой преобразования, следует ввести первичные ключи таблиц Автомобиль и Водитель. В результате получим следующую схему:
ПУТЕВОЙ_ЛИСТ (№, Дата, КодВодителя, Гос№, Выезд, Возвращение, СпидВыезд, СпидВозвр, Расход, Выручка)
Внешние ключи: КодВодителя ссылается на ВОДИТЕЛЬ, Гос№ ссылается на АВТОМОБИЛЬ
Итак, мы получили реляционную схему данных рассматриваемой предметно области. Метод, использованный нами для преобразования концептуальной модели в реляционную, гарантирует, что все реляционные таблицы будут соответствовать третьей нормальной форме.