База данных для информационной системы - Таксопарк

База данных для информационной системы - Таксопарк

БАЗА ДАННЫХ

ДЛЯ ИНФОРМАЦИОННОЙ СИСТЕМЫ

«Таксопарк»

Пояснительная записка к курсовому проекту

по общепрофессиональной дисциплине

«Организация баз данных»

Специальность 552800 – Информатика и вычислительная

техника

Факультет

Кафедра

Курс 3

Семестр 6

2003

СОДЕРЖАНИЕ

| |Введение | |

| | |3 |

|1 |Выбор автоматизируемых функций и информационного обеспечения |4 |

|1.1 | Описание предметной области |4 |

|1.2 | Описание автоматизируемых функций |5 |

|1.3 |Первичное описание информационного обеспечения |7 |

| |Вывод |11 |

|2 |Выявление ограничений и правил поддержания целостности |11 |

|2.1 |Целостное ограничение на уровне атрибутов |11 |

|2.2 |Целостное ограничение на уровне строк |20 |

|2.3 |Целостное ограничение на уровне базы данных |26 |

| |Вывод |29 |

|3 |Разработка локальных концептуальных моделей | |

|3.1 |Разработка исходных локальных ER-моделей |29 |

|3.2 |Нормализация локальных моделей |35 |

|3.3 |Перевод целостных и операционных ограничений на уровне локальных |39 |

| |моделей | |

| |Вывод |39 |

|4 |Разработка глобальной концептуальной модели базы данных | |

|4.1 |Выявление и синтез эквивалентных сущностей |39 |

|4.2 |Выявление и синтез обобщающих сущностей |41 |

|4.3 |Выявление и устранение дублирования атрибутов и связей |41 |

|4.4 |Графическое представление глобальной ER-модели |42 |

|4.5 |Перевод целогстных и операционных ограничений на уровне |43 |

| |глобальной модели | |

|4.6 |Вывод |42 |

|5 |Проектирование реляционной SQL-модели | |

|5.1 |SQL-код для создания реляционной модели |42 |

|6 |Проектирование представлений для автоматизируемых функций | |

|6.1 |Определение способа и формы представления автоматизируемых |46 |

| |функций | |

|6.2 |Создание запросов для выборок |46 |

| |Заключение |47 |

ВВЕДЕНИЕ

Целью данного проекта является выработка умений и навыков

проектирования структуры базы данных, предназначенной для функционирования

автоматизированной информационной системы. Для достижения этой цели в

данном проекте выполняется разработка структуры реляционной базы данных для

гипотетической информационной системы "Таксопарк".

Информационная система «Таксопарк» предназначена для упрощения

регулированием системы и для автоматизации её функций.

Разрабатываемая база данных предназначена для учёта действий системы,

с целью в будущем легко, если это потребуется, вернуться к прежним

изменениям в системе.

Раздел 1 посвящен выбору автоматизированных функций и информационного

обеспечения. Здесь дается краткое описание предметной области; производится

выбор и описание автоматизируемых функций; выполняется первичное описание

информационного обеспечения.

Раздел 2 посвящен выявлению ограничений и правил поддержания

целостности данных, которые будут размещаться в базе данных.

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

множеств кортежей и базы данных в целом.

Раздел 3 посвящен проектированию локальных ER-моделей,

соответствующих отдельным автоматизируемым функциям. Здесь выполняется

составление локальных исходных ER-моделей, производится нормализация

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

поддержания целостности для локальных ER-моделей.

Раздел 4 посвящен проектированию глобальной ER-модели. Здесь

производится выявление и устранение эквивалентных сущностей, выявление

категорий и синтез обобщающих сущностей, выявление и устранение

дублирования атрибутов и связей. Строится графическое представление

глобальной модели, специфицируются ограничения и правила поддержания

целостности на уровне глобальной модели.

Раздел 5 посвящен проектированию реляционной SQL-модели. Здесь

выполняется перевод глобальной ER-модели в реляционную форму,

специфицируются ограничения и правила поддержания целостности на

реляционном уровне, записывается SQL-код для создания реляционной модели.

Раздел 6 посвящен проектированию представлений для автоматизируемых

функций. Здесь выполняется определение путей доступа к данным для

автоматизируемых функций, записывается SQL- код локальных просмотров для

автоматизируемых функций.

1 ВЫБОР АВТОМАТИЗИРУЕМЫХ ФУНКЦИЙ И ИНФОРИАЦИОННОГО ОБЕСПЕЧЕНИЯ

Данный раздел посвящен выбору автоматизируемых функций и

информационного обеспечения, служащих основой для дальнейшего

проектирования структуры базы данных. Здесь дается краткое описание

предметной области; производится выбор и описание автоматизируемых функций;

выполняется первичное описание информационного обеспечения.

Результаты получены путем мысленного воспроизведения и анализа

предположительного функционирования гипотетической автоматизированной

системы «Таксопарк» на основе здравого смысла и опыта исполнителя.

Обследование реальных или типовых объектов данного класса не производилось

ввиду ограниченного времени, отводимого на курсовое проектирование.

1.1 Краткое описание предметной области

В данном подразделе дается краткое описание предметной области, в

которой функционирует информационная система «Таксопарка». Описываются

среда функционирования, объект и субъект управления, цели и задачи

управления.

Таксопарк «Желтая Карета» является современным автотранспортным

предприятием, которое оказывает услуги по перевозке людей на легковых

автомобилях. Для состоятельных клиентов предусмотренная дополнительная

услуга – VIP карта, которая позволяет накапливать скидку и оплачивать

поездки со своего счета. Если поезда осуществляется одним клиентом в более

чем один промежуточный пункт, а также, если нужно ждать клиента довольно

продолжительное время, предусмотрена почасовая оплата с фиксированной

таксой. Координирование водителей, принятие заказов у клиентов и их учет

осуществляет операторская служба. Для автоматизации этого, а также и других

процессов была разработана БД.

1.1.1 Среда функционирования

Среда функционирования системы «Таксопарк» включает область действий

данного автотранспортного предприятия в пределах которой оно функционирует.

1.1.2 Объект управления

Объект управления представляет собой имеющиеся автомобили, водителей,

рабочий персонал обеспечивающий перевозку клиентов.

1.1.3 Субъект управления (управляющая система)

Субъект управления представляет собой совокупность действий

автотранспортного предприятия направленной на обслуживание клиентов, в

пределах среды функционирования.

1.1.4 Цели и задачи управления

Цель управления состоит в автоматизации учёта действий по обслуживанию

клиентов.

Для достижения этой цели в процессе управления решаются задачи

автоматизации регистрации клиента, задачи обслуживания клиента.

1. Выбор и описание автоматизированных функций.

В данном подразделе выбираются и кратко описываются пять функций

управляющей системы, которые предполагается автоматизировать с

использованием разрабатываемой информационной системы. Дается сводка

объектов предметной области, участвующих в реализации автоматизируемых

функций.

1.2.1 Перечень автоматизируемых функций

В рамках данного проекта для автоматизации выбраны следующие пять

функций автоматизированной системы «Таксопарк»:

1) Учет сведений о сотрудниках.

2) Учет принятых вызовов.

3) Учет VIP клиентов.

4) Учет материальных средств.

5) Учет сведений о контрагентах (поставщиках).

2. Функция 1 «Учет сведений о сотрудниках».

Данная функция позволяет быстро найти нужную информацию отделу кадров и

операторской службе. В случае возникновения каких-либо непредвиденных

ситуаций связанных с транспортным средством, также можно оперативно найти

нужную информацию о нем, такую как идентификационный номер (VIN) или номер

двигателя.

1.2.3 Функция 2 «Учет принятых вызовов».

Данная функция создает не только журнал вызовов, по которому можно

вести отчетность, но с использованием атрибута «Флаг состояния» также

позволяет следить за статусом вызова, то есть на какой этапе он находится.

Возможное изменение этого флага: заказ только принят (создана запись, но

еще не один водитель не взял его); заказ взят одним из водителей и он либо

едет к клиенту, либо уже выполняет заказ; заказ выполнен и водитель

освободился; заказ вообще отменили.

4. Функция 3 «Учет VIP клиентов».

Данная функция позволяет хранить сведения о скидке для данного клиента

и номер его договора, а также сумму его баланса, из которой он может

оплатить поездку.

5. Функция 4 «Учет материальных средств».

Данная функция позволяет эффективно вести хранить данные об

ответственном сотруднике и другие аналитические данные.

6. Функция 5 «Учет сведений о контрагентах (поставщиках)».

Данная функция необходима для автоматизации делопроизводства. Например,

данные об ИНН поставщика ГСМ удобнее хранить в электронном виде, для их

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

руки.

1.2.7 Сводка объектов, участвующих в реализации функций

Объекты предметной области, участвующие в реализации автоматизируемых

функций, сведены в табл. 1.1.

Таблица 1.1 Сводка объектов, участвующих в реализации функций

|Ном|Имя объекта |Описание объекта |Функции |П|

|ер | | | |р|

|объ| | | |и|

|ект| | | |м|

|а | | | |е|

| | | | |ч|

| | | | |а|

| | | | |н|

| | | | |и|

| | | | |е|

| | | |1|2|3|4|5| |

|1 |Сотрудник |Коллектив Таксопарка |+|+| |+| | |

|2 |Транспортное |Автомобиль на котором производится|+|+| | | | |

| |средство (ТС) |перевозка клиентов | | | | | | |

|3 |VIP Клиент |Клиент постоянно пользующийся | |+|+| | | |

| | |услугами данного Таксопарка и | | | | | | |

| | |имеющий свой счёт в этой фирме. | | | | | | |

|4 |Вызов |Заявка клиента на осуществление | |+| | | | |

| | |перевозки данным транспортным | | | | | | |

| | |предприятием. | | | | | | |

|5 |Мат. средства |Запасная часть для ТС, техника, | | | |+| | |

| | |оборудование необходимое для | | | | | | |

| | |функционирования данного | | | | | | |

| | |транспортного предприятия. | | | | | | |

|6 |Поставщик |Компания или фирма, которая | | | | |+| |

| | |поставляет мат. Средства данному | | | | | | |

| | |Таксопарку. | | | | | | |

|7 |Запись |Компания или фирма, которая |+|+|+|+|+| |

| | |поставляет мат. Средства данному | | | | | | |

| | |Таксопарку. | | | | | | |

1.3 Первичное описание информационного обеспечения

В данном подразделе дается первичное описание информационного обеспечения

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

функции в виде совокупности атрибутов, необходимых для ее осуществления, с

указанием объектов предметной области, которым принадлежат атрибуты,

отражено в табл. 1.2–1.6.

Таблица 1.2 Информационное обеспечение функции 1 «Учет сведений о

сотрудниках»

|Объект |Атрибут |Описание атрибута |

|1. Сотрудник|Код Сотрудника |Код Сотрудника в базе данных |

| |Фамилия Сотрудника |Фамилия Сотрудника в базе |

| | |данных |

| |Имя Сотрудника |Имя Сотрудника в базе данных |

| |Отчество Сотрудника |Отчество Сотрудника в базе |

| | |данных |

| |1.5 Дата Рождения |Дата Рождения Сотрудника |

| |1.6 Адрес (фактический) |Адрес проживания Сотрудника |

| |1.7 Должность |Должность Сотрудника |

| |1.8 Водительские Права |Категория вод. прав Сотрудника |

| |1.9 Дата Выдачи Прав |Дата Выдачи Прав Сотрудника |

| |1.10 Личный Автомобиль |Личный Автомобиль Сотрудника |

| |1.11 Семейное Положение |Семейное Положение Сотрудника |

| |1.12 Образование |Образование Сотрудника |

| |1.13 Серия Паспорта |Серия Паспорта Сотрудника |

| |1.14 Номер Паспорта |Номер Паспорта Сотрудника |

| |1.15 Кем Выдан |Кем Выдан Паспорт |

| |1.16 Дата Выдачи |Дата Выдачи Паспорта |

| |1.17 Код Подразделения |Код Подразделения Паспорта |

| |1.18 Адрес Регистрации |Адрес Регистрации Сотрудника |

|2. ТС |2.1 Номер ТС |Гос. Номер ТС |

| |2.2 Марка Модель ТС |Марка Модель ТС |

| |2.3 Идентификационный Номер |Идентификационный Номер ТС |

| |2.4 Тип ТС |Тип ТС |

| |2.5 Категория ТС(ABCD) |Категория ТС |

| |2.6 Год Выпуска ТС |Год Выпуска ТС |

| |2.7 Модель Двигателя |Модель Двигателя ТС |

| |2.8 Номер Двигателя |Номер Двигателя ТС |

| |2.9 Шасси (рама) № |Шасси (рама) №ТС |

| |2.10 Кузов (коляска) № |Кузов (коляска) №ТС |

| |2.11 Цвет |Цвет ТС |

| |2.12 Мощность Двигателя л.с.|Мощность Двигателя л.с. ТС |

| |2.13 Серия Паспорта ТС |Серия Паспорта ТС |

| |2.14 РММ кг |Разреш. Максимальная масса ТС |

| |2.15 Масса Без Нагрузки кг |Масса Без Нагрузки кг ТС |

|3.Запись |3.1 Дата Записи |Дата Данной Записи |

| |3.2 Автор Записи |Автор Данной Записи |

| |3.3 Дата Последнего |Дата Последнего изменения |

| |изменения |Записи |

| |3.4 Автор Последнего |Автор Последнего Изменения |

| |Изменения |Записи |

Таблица 1.3 Информационное обеспечение функции 2 «Учет принятых вызовов»

|Объект |Атрибут |Описание атрибута |

|1. Вызов |1.1 Код Вызова |Код Вызова в базе данных |

| |1.2 Когда Приехать За |Время, в которое нужно приехать|

| |Клиентом |за клиентом |

| |1.3 Флаг Почасовой Оплаты |Присутствует ли в данном вызове|

| | |почасовая оплата |

| |1.4 Время Движения |Время Затраченное На Перевозку |

| | |пассажира в часах |

| |1.5 Расстояние Маршрута |Расстояние Маршрута в км |

| |1.6 Телефон |Телефон, по которому можно |

| | |связаться с клиентом |

| |1.7 Общая Стоимость Услуги |Общая Стоимость Услуги в рублях|

| |1.8 Дополнительная |Дополнительная информация |

| |информация | |

| |1.9 Флаг Состояния (заказ | |

| |выполнен, еще нет или | |

| |отменен) | |

| | Улица (начало маршрута) |Адрес начала маршрута: Улица |

| |1.11 Дом |Адрес начала маршрута: Дом |

| |1.12 Подъезд |Адрес начала маршрута: Подъезд |

| |1.13 Улица (промежуточный |Адрес промежуточного пункта: |

| |пункт) |Улица |

| |1.14 Дом |Адрес промежуточного пункта: |

| | |Дом |

| |1.15 Подъезд |Адрес промежуточного пункта: |

| | |Подъезд |

| |1.16 Улица (конец маршрута) |Адрес конца маршрута: Улица |

| |1.17 Дом |Адрес конца маршрута: Дом |

| |1.18 Подъезд |Адрес конца маршрута: Подъезд |

| |1.19 Стоимость часа |Стоимость часа обслуживания в |

| | |руб. |

| |1.20 Стоимость Км пути |Стоимость Км пути в рублях |

|2. Сотрудник|Код Сотрудника |Фамилия Сотрудника в базе |

| | |данных |

| |ФИО Сотрудника |Имя Сотрудника в базе данных |

|3. ТС |3.1 Цвет Машины |Цвет ТС На Котором Будет |

| | |Совершена Перевозка |

| |3.2 Номер Машины |Номер ТС На Котором Будет |

| | |Совершена Перевозка |

|4. VIP |4.1Флаг VIP клиента |Является ли сделавший вызов |

|Клиент | |клиент, VIP Клиентом |

| |Номер VIP карты |Номер VIP карты данного VIP |

| | |Клиента |

|5.Запись |5.1 Дата Записи |Дата Данной Записи |

| |5.2 Автор Записи |Автор Данной Записи |

| |5.3 Дата Последнего |Дата Последнего изменения |

| |изменения |Записи |

| |5.4 Автор Последнего |Автор Последнего Изменения |

| |Изменения |Записи |

Таблица 1.4 Информационное обеспечение функции 3 «Учет VIP клиентов»

|Объект |Атрибут |Описание атрибута |

|1. VIP |1.1 Код Клиента |Код Клиента в базе данных |

|Клиент | | |

| |1.2 Фамилия |Фамилия Клиента в базе данных |

| |1.3 Имя |Имя Клиента в базе данных |

| |1.4 Отчество |Отчество Клиента в базе данных |

| |1.5 Номер VIP карты |Номер VIP карты данного VIP |

| | |Клиента |

| |1.6 Номер Договора |Номер Договора данного VIP |

| | |Клиента с Таксопарком |

| |1.7 Дата Договора |Дата Договора данного VIP |

| | |Клиента с Таксопарком |

| |1.8 Скидка |Скидка, предоставляемая на |

| | |данное время VIP Клиенту при |

| | |оплате |

| |1.9 Баланс |Сумма денег находящаяся в |

| | |данное время на счете этого |

| | |клиента |

| |1.10 Адрес(фактический) |Адрес проживания VIP Клиента |

| |1.11 Телефон |Телефон VIP Клиента |

| |1.12 Серия Паспорта |Серия Паспорта VIP Клиента |

| |1.13 Номер Паспорта |Номер Паспорта VIP Клиента |

| |1.14 Кем Выдан |Кем Выдан Паспорт VIP Клиента |

| |1.15 Дата Выдачи |Дата Выдачи Паспорта VIP |

| | |Клиента |

| |1.16 Код Подразделения |Код Подразделения Паспорта |

| |1.17 Адрес Регистрации |Адрес Регистрации VIP Клиента |

|2.Запись |2.1 Дата Записи |Дата Данной Записи |

| |2.2 Автор Записи |Автор Данной Записи |

| |2.3 Дата Последнего |Дата Последнего изменения |

| |Изменения |Записи |

| |2.4 Автор Последнего |Автор Последнего Изменения |

| |Изменения |Записи |

Таблица 1.5 Информационное обеспечение функции 4 «Учет материальных

средств»

|Объект |Атрибут |Описание атрибута |

|1.Сотрудник |1.1 Код Ответственного |Код Сотрудника, который |

| |Сотрудника |ответственен за данное мат |

| | |средство |

| |1.2 Фамилия Ответственного |Фамилия Сотрудника, который |

| |Сотрудника |ответственен за данное мат |

| | |средство |

| |1.3 Код Сотрудника, который |Код Сотрудника, который |

| |использует это материальное |использует это материальное |

| |средство |средство |

| |1.4 Фамилия Сотрудника |Фамилия Сотрудника (который |

| |(который использует это |использует это материальное |

| |материальное средство) |средство) |

|2. Мат. |2.1 Код Мат Средства |Код Мат Средства в базе данных |

|средства | | |

| |2.2 Номинальная Стоимость |Номинальная Стоимость мат |

| | |средства |

| |2.3 Описание |Описание мат средства |

| |2.4 Прилагаемые Части |Прилагаемые Части |

| |2.5 Месторасположение |Месторасположение мат средства |

| |2.6 Назначение |Для чего use данное мат |

| | |средство |

| |2.7 Периодичность |Периодичность Обслуживания мат |

| |Обслуживания |средство |

| |2.8 Информация о сервисных и|Информация о сервисных и |

| |ремонтных работах |ремонтных работах |

| |2.9 Затраты на эксплуатацию |Затраты на эксплуатацию |

| |2.10 Дополнительная |Дополнительная информация |

| |информация | |

|3.Запись |3.1 Дата Записи |Дата Данной Записи |

| |3.2 Автор Записи |Автор Данной Записи |

| |3.3 Дата Последнего |Дата Последнего изменения |

| |Изменения |Записи |

| |3.4 Автор Последнего |Автор Последнего Изменения |

| |Изменения |Записи |

Таблица 1.5 Информационное обеспечение функции 5 «Учет сведений о

контрагентах (поставщиках)»

|Объект |Атрибут |Описание атрибута |

|1. Поставщик|1.1 Код Контрагента |Код Поставщика в базе данных |

| |1.2 Наименование Контрагента|Название фирма поставщика |

| |1.3 Вид Контрагента |Тип Продукции поставляемой |

| | |контрагентом |

| |1.4 ИНН |ИНН Поставщика |

| |1.5 ОКОНХ |ОКОНХ Поставщика |

| |1.6 ОКПО |ОКПО Поставщика |

| |1.7 Юридический адрес |Юридический адрес Поставщика |

| |1.8 Телефон |Телефон Поставщика |

| |1.9 Факс |Факс Поставщика |

| |1.10 Электронная почта |Электронная почта Поставщика |

| |1.11 Расчетные Счета |Расчетные Счета Поставщика |

| |1.12 Комментарий |Комментарий |

| |1.13 Договора |Договора заключенные с |

| | |поставщиком |

| |1.14 Дата Договора |Дата Договора |

| |1.15 Валюта Взаиморасчетов |Валюта Взаиморасчетов (кредит |

| |(кредит поставщика) |поставщика) |

| |1.17 Сумма |Сумма поставки |

| |1.18 Глубина (дней) |Количество дней договора |

| | |(поставки) |

| |1.19 Тип Расчета |Тип Расчета (нал. \ без нал.) |

|2.Запись |2.1 Дата Записи |Дата Данной Записи |

| |2.2 Автор Записи |Автор Данной Записи |

| |2.3 Дата Последнего |Дата Последнего изменения |

| |Изменения |Записи |

| |2.4 Автор Последнего |Автор Последнего Изменения |

| |Изменения |Записи |

Вывод

В результате анализа предположительного функционирования

гипотетической автоматизированной системы «Таксопарк» выбраны пять

автоматизируемых функций, охватывающих основные виды деятельности данного

автотранспортного предприятия, информационное обеспечение которых

соответствует 7 объектам предметной области и включает 101 атрибут,

охватывающих сведения о всей деятельности автотранспортного предприятия и

предназначенных для облегчения и упрощения работы всей системы.

2 ВЫЯВЛЕНИЕ ОГРАНИЧЕНИЙ

И ПРАВИЛ ПОДДЕРЖАНИЯ ЦЕЛОСТНОСТИ

Данный раздел посвящен выявлению ограничений и правил поддержания

целостности данных, которые будут размещаться в базе данных.

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

множеств кортежей и базы данных в целом.

2.1 Уровень атрибутов

В данном подразделе для функций, определенных в разд. 1.2, выявляются

ограничения и правила на уровне атрибутов, выбранных в разд. 1.3. В первую

очередь путем анализа отдельных атрибутов определяются характеристики

доменов, из которых атрибуты объектов, участвующих в выполнении

автоматизируемых функций, берут свои значения. Далее анализируются

возможные изменения значений атрибутов с целью выявления динамических

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

2.1.1 Функция 1 «Учет сотрудников»

2.1.1.1 Домены, из которых атрибуты, относящиеся к данной функции, берут

свои значения, приведены в табл. 2.1.

Таблица 2.1 Домены атрибутов для функции 1 «Учет сотрудников»

|Атрибут |Тип (размер) |Границы |Стр|Усл|Обя|Пов|Зна|

| | | |укт|ови|зат|тор|чен|

| | | |ура|е |ель|яем|ие |

| | | | | |нос|ост|по |

| | | | | |ть |ь |умо|

| | | | | | | |лча|

| | | | | | | |нию|

|Код Сотрудника |Числовая строка | | | |+ |+ | |

| |(4) | | | | | | |

|Фамилия Сотрудника|Строка русских |А…Яя |1) | |+ |+ | |

| |букв | | | | | | |

|Имя Сотрудника |Строка русских |А…Яя |1) | |+ |+ | |

| |букв | | | | | | |

|Отчество |Строка русских |А…Яя |1) | |+ |+ | |

|Сотрудника |букв | | | | | | |

|1.5 Дата Рождения |Числовая строка |=18

9) Дата выдачи паспорта - Дата рождения >=16

10) Город – улица – дом - квартира.

2. Динамические ограничения атрибутов объектов, участвующих в

реализации данной функции, приведены в табл. 2.2.

Таблица 2.2 – Динамические ограничения на уровне атрибутов для

функции 1«Учет сотрудников»

|Атрибут |Динамическое ограничение |

|1.1 Код Сотрудника |Числовая строка (4). Новый код получается |

| |прибавлением 1 к числу |

2.1.1.3 Операционные правила для атрибутов объектов, участвующих в

реализации данной функции, не выявлены.

2.1.2 Функция 2 «Учет принятых вызовов»

2.1.2.1 Домены, из которых атрибуты, относящиеся к данной функции, берут

свои значения, приведены в табл. 2.3.

Таблица 2.3 Домены атрибутов для функции 2 «Учет принятых вызовов»

|Атрибут |Тип (размер) |Границы |Стр|Усл|Обя|Пов|Зна|

| | | |укт|ови|зат|тор|чен|

| | | |ура|е |ель|яем|ие |

| | | | | |нос|ост|по |

| | | | | |ть |ь |умо|

| | | | | | | |лча|

| | | | | | | |нию|

|Код Вызова |Числовая строка | | | |+ |+ | |

| |(4) | | | | | | |

|Когда Приехать За |Числовая строка |> тек.дата|1) | |+ | | |

|Клиентом |(4) | | | | | | |

|Флаг Почасовой |Boolean | | |8) | | | |

|Оплаты | | | | | | | |

|Время Движения |Числовая строка | |1) |8) |+ | | |

| |(4) | | | | | | |

|1.5 Расстояние |Числовая строка | |2) | |+ | | |

|Маршрута |(6) | | | | | | |

|1.6 Телефон |Числовая строка | | | |+ | | |

| |(6) | | | | | | |

|1.7 Общая |Числовая строка | |3) | |+ | | |

|Стоимость Услуги | | | | | | | |

|1.8 Дополнительная|Строка букв и | | | | | | |

|информация |цифр | | | | | | |

|1.9 Флаг Состояния|Boolean | | | |+ | | |

|1.10 Улица (начало|Строка букв | | | | | | |

|маршрута) | | | | | | | |

|1.11 Дом |Числовая строка | | | | | | |

|1.12 Подъезд |Числовая строка |0…9 | | | | | |

|1.13 Улица |Строка букв | | | | | | |

|(промежуточный | | | | | | | |

|пункт) | | | | | | | |

|1.14 Дом |Числовая строка | | | | | | |

|1.15 Подъезд |Числовая строка |0…9 | | | | | |

|1.16 Улица (конец |Строка букв | | | | | | |

|маршрута) | | | | | | | |

|1.17 Дом |Числовая строка | | | | | | |

|1.18 Подъезд |Числовая строка |0…9 | | | | | |

|Код Сотрудника |Числовая строка | | | |+ | | |

| |(4) | | | | | | |

|ФИО Сотрудника |Строка букв и |А…Яя |5) | |+ |+ | |

| |цифр | | | | | | |

|3.1 Цвет Машины |Строка букв | | | |+ |+ | |

|3.2 Номер Машины |Строка букв и |4) | | |+ |+ | |

| |цифр | | | | | | |

|4.1Флаг VIP |Boolean | | |7) | | | |

|клиента | | | | | | | |

|Номер VIP карты |Числовая строка | | |7) | | | |

| |(4) | | | | | | |

|5.1 Дата Записи |Числовая строка | атрибут Категория ТС

2. Модель.1: атрибут Дата выдачи прав – ат. Дата рождения Сущность МАРКА МОДЕЛЬ

атрибут Категория ТС

2. Сущность СОТРУДНИК атрибут Дата выдачи прав – Сущность СОТРУДНИК ат.

Дата рождения<= 18 лет

3. Сущность НОМЕР атрибут Дата выдачи паспорта – Сущность СОТРУДНИК ат.

Дата рождения <= 16 лет

4. Сущность ВЫЗОВ: если ат. флаг VIP клиента=истина, то Сущность ВЫЗОВ

ат. номер карты не пуст

5. Сущность ВЫЗОВ: если ат. флаг почасовой оплаты=истина, то Сущность

ВЫЗОВ ат. время движения не пуст

6. Сущность НАЧАЛО ат.Улица не = Сущность КОНЕЦ ат. Улица

7. Сущность VIP КЛИЕНТ если ат. Баланс <1000 руб., то ат.Скидка <= 10%

8. Сущность VIP КАРТА: атрибут Дата Договора <(раньше) Сущность ЗАПИСЬ

ат.Дата записи

9. Сущность МАТЕРИАЛЬНОЕ СРЕДСТВО атрибут Номинальная стоимость <

Сущность МАТЕРИАЛЬНОЕ СРЕДСТВО ат. Затраты на Эксплуатацию

10. Сущность КОНТРАГЕНТ: атрибут Телефон должен соответствовать коду

города, который указан в ат. Сущность КОНТРАГЕНТ Юридический адрес

11. Сущность КОНТРАГЕНТ: атрибут Факс должен соответствовать коду города,

который указан в Сущность КОНТРАГЕНТ ат. Юридический адрес

12. Сущность КОНТРАГЕНТ: атрибут Дата Договора <(раньше) Сущность ЗАПИСЬ

ат. Дата записи

4.6 Вывод

В результате проектирования глобальной ER-модели, соответствующей

автоматизируемым функциям, получена модель, включающая 7 сущностей, 2

связи типа «многие ко многим» и 8 связей типа «один ко многим».

5 ПРОЕКТИРОВАНИЕ РЕЛЯЦИОННОЙ SQL-МОДЕЛИ

Данный раздел посвящен проектированию реляционной SQL-модели. Здесь

выполняется перевод глобальной ER-модели в реляционную форму,

специфицируются ограничения и правила поддержания целостности на

реляционном уровне, записывается SQL-код для создания реляционной модели.

5.1 Перевод глобальной ER-модели в реляционную форму

Устранение связей типа «один ко многим». Такие связи устраняются путем

копирования первичных ключей исходной сущности в множество атрибутов

дочерней.

Конкретные данные приведены в таблице 5.1

Таблица 5.1 - «Копирование первичных ключей при устранении связей типа

«один ко многим».

|Исходная сущность |Дочерняя сущность |Первичный ключ |

|Сотрудник |Материальное средство |Код сотрудника |

|Сотрудник |Вызов |Код сотрудника |

|Сотрудник |Паспорт |Код сотрудника |

|Материальное средство |Поставщик |Код мат. средства |

|Вызов |VIP Клиент |Код вызова |

|VIP Клиент |VIP Карта |Код VIP Клиента |

|VIP Клиент |Паспорт |Код VIP Клиента |

|Вызов |Транспортное средство |Код вызова |

5.2 SQL-код для создания реляционной модели

Create Table Сотрудник (

Код_сотрудника Int Not Null,

Фамилия Char (20),

Имя Char (20),

Отчество Char (20),

Дата_рожд Date,

Адрес Char (20),

Права Char (20),

Должность Char (20),

Образование Char (20),

Серия_Паспорта Int Not Null,

№Паспорта Int Not Null,

№телефона Int Not Null,

№ТС Char (6),

Дата_записи Date,

Primary key (Код_сотрудника) )

Create table Транспортное_Средство(

Код_мат_средства Int Not Null,

№TC Char (6),

Марка Char (20),

Цвет Char (20),

VIN Int,

Категория Char (20),

Дата_Выпуска Date,

№Двигателя Int,

№Кузова Int,

Двигатель Int,

Масса Int,

Дата_записи Date,

Primary Key (Код_мат_средства)

)

Create Table Поставщик(

Код_Поставщика Int Not Null,

Код_Мат_средства Int NOt Null,

Наименование Char (20),

Вид Char (20),

ИНН Int,

ОКОНХ Int,

Юр_адрес Char (20),

Факс Int,

Договор Char (20),

Дата_договора Date,

Коментарий Char (20),

Дата_записи Date,

Primary Key (Код_Поставщика)

)

Create Table Паспорт (

Серия_паспорта Char (20),

№Паспорта Int Not Null,

Кем_Выдан Char (20),

Код_подразделения Char (20),

Адрес_регистрации Char (20),

Дата_регистрации Date,

Дата_записи Date,

Primary Key (Серия_паспорта)

)

Create Table Материальное_Средство (

Код_мат_средства Int Not Null,

Код_отв_сотрудника Int,

Стоимость Int,

Описание Char (20),

Назначение Char (20),

Эксплуатация Char (20),

Доп_инфо Char (20),

Дата_записи Date,

Primary Key (Код_мат_средства)

)

Create Table Вызов (

Код_Вызова Int Not Null,

Влаг_VIP_Клиента Char (20),

№VIP_Карты Int,

Время_заказа Date,

Флаг_почасовой_оплаты Char (20),

Время_жвижения Date,

Расстояние Int,

Стоимость_р_ч Int,

Стоимость_р_км Int,

Стоимость_заказа Int,

Флаг_состояния Char (20),

Код_сотрудника Int Not Null,

№ТС Char (6),

Дата_записи Date,

Primary Key (Код_Вызова)

)

Create Table VIP_Клиент (Код_VIP_Клиента Int Not Null,

№VIP_Карты Int,

Фамилия Char (20),

Имя Char (20),

Отчество Char (20),

Скидка Int,

Баланс Int,

Адрес Char (20),

Серия_Паспорта Char (20),

№Паспорта Int,

Дата_записи Date,

Primary Key (Код_VIP_Клиента)

)

Create Table VIP_Карта (№VIP_Карты Int Not Null,

№Договора Int,

Дата_Договора Date,

Дата_записи Date,

Primary Key (№VIP_Карты))

6 ПРОЕКТИРОВАНИЕ ПРЕДСТАВЛЕНИЙ

ДЛЯ АВТОМАТИЗИРУЕМЫХ ФУНКЦИЙ

Данный раздел посвящен проектированию представлений для

автоматизируемых функций. Здесь выполняется определение путей доступа к

данным для автоматизируемых функций, записывается SQL-код локальных

просмотров для автоматизируемых функций.

1. Определение способа и формы представления

Для 5 функций был выбран способ реализации представления в виде

запроса (Select), форма представления была выбрана в виде иерархии таблиц.

6.2 SQL – код для реализации выборки.

VIP_Клиент

SELECT [VIP КЛИЕНТ].№VIP_Карты,

[VIP КЛИЕНТ].Фамилия,

[VIP КАРТА].№Договора,

ПАСПОРТ.Адрес_регистр

FROM ПАСПОРТ INNER JOIN ([VIP КАРТА] RIGHT JOIN [VIP КЛИЕНТ] ON [VIP

КАРТА].№VIP_Карты = [VIP КЛИЕНТ].№VIP_Карты) ON (ПАСПОРТ.№Паспорта = [VIP

КЛИЕНТ].№Паспорта) AND (ПАСПОРТ.Серия_Паспорта = [VIP

КЛИЕНТ].Серия_Паспорта);

Вызов

SELECT ВЫЗОВ.Время_заказа,

[ТРАНСПОРТНОЕ СРЕДСТВО].Цвет,

СОТРУДНИК.Фамилия, [VIP КЛИЕНТ].№VIP_Карты

FROM [VIP КЛИЕНТ] INNER JOIN (СОТРУДНИК RIGHT JOIN ([ТРАНСПОРТНОЕ СРЕДСТВО]

INNER JOIN ВЫЗОВ ON [ТРАНСПОРТНОЕ СРЕДСТВО].№ТС = ВЫЗОВ.№ТС) ON

СОТРУДНИК.Код_сотрудника = ВЫЗОВ.Код_сотрудника) ON [VIP КЛИЕНТ].№VIP_Карты

= ВЫЗОВ.№VIP_Карты;

Поставщик

SELECT [МАТЕРИАЛЬОЕ СРЕДСТВО].Код_мат_ср, ПОСТАВЩИК.Наименование,

ПОСТАВЩИК.Факс,

ПОСТАВЩИК.ИНН,

СОТРУДНИК.Фамилия,

СОТРУДНИК.Должность

FROM СОТРУДНИК INNER JOIN ([МАТЕРИАЛЬОЕ СРЕДСТВО] INNER JOIN ПОСТАВЩИК ON

[МАТЕРИАЛЬОЕ СРЕДСТВО].Код_мат_ср = ПОСТАВЩИК.Код_мат_средства) ON

СОТРУДНИК.Код_сотрудника = [МАТЕРИАЛЬОЕ СРЕДСТВО].Код_отв_сотр;

Сотр_мат_Средство

SELECT СОТРУДНИК.Фамилия,

ПАСПОРТ.Адрес_регистр,

СОТРУДНИК.Адрес,

[МАТЕРИАЛЬОЕ СРЕДСТВО].Описание,

[МАТЕРИАЛЬОЕ СРЕДСТВО].Стоимость

FROM (ПАСПОРТ INNER JOIN СОТРУДНИК ON (ПАСПОРТ.№Паспорта =

СОТРУДНИК.№Паспорта) AND (ПАСПОРТ.Серия_Паспорта =

СОТРУДНИК.Серия_Паспорта)) INNER JOIN [МАТЕРИАЛЬОЕ СРЕДСТВО] ON

СОТРУДНИК.Код_сотрудника = [МАТЕРИАЛЬОЕ СРЕДСТВО].Код_отв_сотр;

Сотрудник

SELECT СОТРУДНИК.Фамилия,

[ТРАНСПОРТНОЕ СРЕДСТВО].№ТС,

ПАСПОРТ.Адрес_регистр,

[МАТЕРИАЛЬОЕ СРЕДСТВО].Код_мат_ср,

[МАТЕРИАЛЬОЕ СРЕДСТВО].Описание

FROM ПАСПОРТ INNER JOIN ((СОТРУДНИК INNER JOIN [ТРАНСПОРТНОЕ СРЕДСТВО] ON

СОТРУДНИК.№ТС = [ТРАНСПОРТНОЕ СРЕДСТВО].№ТС) LEFT JOIN [МАТЕРИАЛЬОЕ

СРЕДСТВО] ON СОТРУДНИК.Код_сотрудника = [МАТЕРИАЛЬОЕ

СРЕДСТВО].Код_отв_сотр) ON (ПАСПОРТ.№Паспорта = СОТРУДНИК.№Паспорта) AND

(ПАСПОРТ.Серия_Паспорта = СОТРУДНИК.Серия_Паспорта);

Заключение

В результате выполнения этого курсового проекта я выработала умения и

навыки проектирования структуры базы данных, предназначенной для

функционирования автоматизированной информационной системы.

В разделе 1 я выбрала автоматизированные функции и информационное

обеспечение. Дала краткое описание предметной области, произвела выбор и

описание автоматизируемых функций, выполнила первичное описание

информационного обеспе6чения.

Во 2 разделе я выявили ограничения и правила поддержания целостности

данных, которые будут размещаться в базе данных. Рассмотрела ограничения и

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

в целом.

В 3 разделе я спроектировала локальные ER-модели, соответствующие

отдельным автоматизируемым функциям. Произвела нормализацию локальных ER-

моделей, разработала спецификации огрничений и правил поддержания

целостности для локальных ER-моделей.

В 4 разделе спроектировала глобальную ER-модель. Произвела выявление и

устранение эквивалентных сущностей, выявила категории и синтез обобщающих

сущностей, выявила и устранила дублирование атрибутов и связей.

В разделе 5 записала SQL-код для создания реляционной модели

В разделе 6 записала SQL-код локальных запросов для автоматизируемых

функций.

-----------------------

Дата записи

Автор записи

Флаг актуальности

Дата изменения

Автор изменения

ЗАПИСЬ

Код материального средства

Код ответственного сотрудника

ФИО отв-го сот-ка

Номинальная стоимость

Описание

Прилагаемы части

Месторасположение

Назначение

Периодичность обслуживания

Сервисные работы

Эксплуатация

Код сотрудника

ФИО сот-ка

Дополнительная информация

МАТЕРИАЛЬНОЕ СРЕДСТВО