Базы данных

Автор работы: Пользователь скрыл имя, 17 Июня 2013 в 06:49, курсовая работа

Краткое описание

Каждый водитель характеризуется паспортными данными, классом, стажем работы и окладом, причем оклад зависит от класса и стажа работы. Маршрут автобуса характеризуется номером маршрута, названием начального и конечного пункта движения, временем начала и конца движения, интервалом движения и протяженностью в минутах (время движения от кольца до кольца). Характеристиками автобуса являются: номер государственной регистрации автобуса, его тип и вместимость, причем вместимость автобуса зависит от его типа. Каждый водитель закреплен за отдельным автобусом и работает на определенном маршруте, но в случае поломки своего автобуса или болезни другого водителя может пересесть на другую машину. В базе должен храниться график работы водителей. Необходимо предусмотреть возможность корректировки БД в случаях поступления на работу нового водителя, списания старого автобуса, введения нового маршрута или изменения старого и т.п.

Содержимое работы - 1 файл

Поясн записка.doc

— 1.53 Мб (Скачать файл)

 

Связь по ключу Pasp с таблицей “Водители” предусматривает обеспечение ссылочной целостности.

Связь по ключу avtob с таблицей “Автобусы” предусматривает обеспечение ссылочной целостности.

Связь по ключу marshr с таблицей “Маршруты” предусматривает обеспечение ссылочной целостности.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4. Содержание  таблиц

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

 

Паспорт

Фамилия И.О.

стаж

класс

оклад

Дата рождения

Адрес

3000 034582

Иванов А.В.

5

B

15000

09.04.1979

пр. Богатырский  дом 100 кв20

3000 121034

Белов А.С.

7

B

17000

09.04.1983

ул. Дыбенко  дом 12 кв 12

3000 123034

Иванов И.И.

9

A

29000

10.02.1970

ул. Камышовая  дом 35 к 1 кв 292

3000 452114

Белов С.А.

10

A

30000

29.10.1985

пр. Авиаконструкторов  дом 15 кв 4

3000 542421

Старов П.В.

7

B

17000

08.09.1985

пр. Богатырский  дом 55 к 3 кв 103

3000 762234

Еремеев О.П.

5

C

10000

30.11.1980

ул. Ильюшина дом 22 кв 3

3000 906823

Титов П.М.

10

B

20000

17.04.1984

пр. Испытателей  дом 11 кв 45

3021 123345

Галич Н.О.

10

B

20000

08.08.1983

пр. Богатырский  дом 67 к 2 кв 333

3021 134553

Жданов М.Ю.

10

B

20000

09.01.1983

ул. Камышовая  дом 22 кв 107

3021 234945

Петров О.Н.

7

B

17000

05.12.1980

пр. Авиаконструкторов  дом 212 кв 561

3021 343421

Нестеров П.М.

4

B

14000

15.11.1985

пр. Богатырский  дом 232 кв 12

3021 347520

Белов И.С.

10

B

20000

19.11.1985

пр. Испытателей  дом 5 кв 23

3021 438954

Егоров Л.Д.

4

B

14000

01.01.1973

ул. Гакелевская  дом 55 кв 6

3021 452213

Иванов С.Г.

4

B

14000

05.01.1983

пр. Маршала-Новикова 23

3021 485621

Кузнецов Н.А.

8

C

13000

17.09.1973

пр. Сизова дом 44 кв 12

3021 509210

Кузнецов В.Н.

10

A

30000

30.03.1975

пр. Мориса-Тереза дом 115 кв 69

4000 421131

Петров А.И.

5

C

10000

23.09.1981

пр. Сизова дом 59 кв 111

4000 455202

Зайцев О.С.

10

B

20000

05.03.1981

ул. Долгоозерная дом 1 кв 1

4000 455220

Бабушкин Р.Ю.

10

A

30000

05.03.1978

ул. Яхтенная дом 15 кв 2

4000 509123

Нагорный Д.И.

7

B

17000

09.12.1982

ул. Камышовая  дом 11 кв 501

4000 576933

Сидоров С.А.

3

C

8000

06.07.1981

ул. Байконурская дом 43 кв 3

4000 673921

Швондер А.С.

9

A

29000

09.12.1979

пр. Яхтенная дом 15 кв 77

4000 678423

Быков П.А.

10

B

20000

06.09.1982

ул. Гакелевская дом 76 кв 55

4000 789842

Сидоров С.Л.

4

B

14000

09.12.1980

ул. Камышовая  дом 104 кв 5




Таблица “Водители”

 

Таблица “Автобусы”

Номер автобуса

Тип

а004вп

Лиаз 05гв

а007пп

Экарус (гармошка)

а070пр

Экарус 95гв

в007рп

Экарус (гармошка)

в909ао

Лиаз 90гв

н006оо

Лиаз 90гв

о009пр

Лиаз (гармошка)

п004пп

Лиаз 05гв

п009оо

Лиаз (гармошка)

р005рр

Лиаз (гармошка)

р007аа

Экарус (гармошка)

с050ар

Лиаз 05гв


 

Таблица “Маршруты”

Номер

Начальный пункт

Конечный пункт

Начало движения

Окончание движения

Интервал

Протяженность

1

м. Старая деревня

ул. Камышовая

00.01.1900

00.01.1900

15

110

2

пр. Сизова

м. Пионерская

00.01.1900

00.01.1900

25

180

3

м. Плошадь мужества

м. Пионерская

00.01.1900

00.01.1900

15

100

4

пр. Испытателей

ул. Камышовая

00.01.1900

00.01.1900

20

60

5

пр. Авиаконструкторов

Ланское шоссе

00.01.1900

00.01.1900

20

120


 

Таблица “Водят”

Номер паспорта

Номер автобуса

маршрут

дата

3021 234945

а007пп

1

23.05.2006

4000 576933

в007рп

1

22.05.2006

3021 438954

в007рп

1

23.05.2006

3000 034582

н006оо

2

22.05.2006

4000 455202

н006оо

2

23.05.2006

4000 455220

а004вп

2

22.05.2006

3021 509210

а004вп

2

23.05.2006

3000 121034

п004пп

2

22.05.2006

3021 347520

п004пп

2

23.05.2006

3021 485621

р007аа

3

22.05.2006

3021 343421

р007аа

3

23.05.2006

4000 678423

п009оо

3

22.05.2006

4000 673921

п009оо

3

23.05.2006

3000 452114

в909ао

4

22.05.2006

3021 452213

в909ао

4

23.05.2006

4000 789842

а070пр

4

22.05.2006

4000 509123

а070пр

4

23.05.2006

3021 123345

р005рр

5

22.05.2006

3000 906823

р005рр

5

23.05.2006

3000 762234

о009пр

5

22.05.2006

4000 421131

о009пр

5

23.05.2006

3000 542421

с050ар

5

22.05.2006

3021 134553

с050ар

5

23.05.2006

3000 123034

а007пп

1

24.05.2006

3021 438954

в007рп

1

24.05.2006

3000 034582

н006оо

2

24.05.2006

3021 509210

а004вп

2

24.05.2006

3000 121034

п004пп

2

24.05.2006

3021 343421

р007аа

3

24.05.2006

4000 678423

п009оо

3

24.05.2006

3000 452114

в909ао

4

24.05.2006

3021 123345

р005рр

5

24.05.2006

4000 421131

о009пр

5

24.05.2006

3021 134553

с050ар

5

24.05.2006


 

 

 

 

 

Таблица “Тип_вместимость”

Тип

Вместимость (чел)

Лиаз (гармошка)

250

Лиаз 05гв

150

Лиаз 90гв

130

Экарус (гармошка)

200

Экарус 95гв

150


 

Таблица “Поломки”

               id

Номер автобуса

дата поломки

1

п009оо

25.05.2006

2

а070пр

25.05.2006


 

Таблица “Оклад”

Класс

Оклад

A

20000

B

10000

C

5000


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5. Реализация  интерфейса

5.1. Иерархия экранных форм:



 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.2. Экранные формы

 

Форма “Главная”

 

Главный интерфейс базы.

Источник данных: нет

Элементы формы:

Рисунки, событие onClick.

Стрелка1 – открытие формы Маршруты

Стрелка2– открытие формы Автобусы

Стрелка3 – открытие формы Водители

Стрелка4 – открытие формы НеВышли

Стрелка5 – открытие отчета поПарку

Стрелка6 – открытие формы График работы

“Выход” – выход.

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Форма “Маршруты”

 

 

Выводит данные о маршрутах.

Источник данных: таблица Маршруты

Элементы:

Поля, куда выводятся основные характеристики маршрута.

Кнопки листания.

Кнопка поиска.

Кнопка29 – открыть форму “МаршВод”

Кнопка27 – открыть форму “СписокАвтоб” либо “СписокАвтобВсех”

Кнопка40 – открыть форму “МаршПоиск”

Кнопка48 – открыть отчет “Справка”

Кнопка добавления -Кнопка45– открывает форму “МаршВводНов”

Кнопка удаления - Кнопка47 – открывает форму “МаршрутыУдалПодт” на подтверждение удаления. И вызывает запрос МаршУдал.

 

Форма “МаршВод”

Список водителей на данном маршруте.

Источник записей: запрос МаршВод.

 

Элементы:

Подчиненная форма МАршВодПод. Источник записей: Запрос МАршВодПод.

Поле связи – pasp

 

Форма “СписокАвтоб” или “СписокАвтобВсех”

Вывод списка автобусов на данном маршруте.

Источник записей: запрос СписАвтоб для “СписокАвтоб”

Или запрос СписокАвтобВсех для  “СписокАвтобВсех”

 

Форма “МаршПоиск”

 

Поиск маршрутов  по названиям начального и конечного  путей.

Источник  данных: нет

Элементы:

Поле со списком 1, источник данных

SELECT МаршНачПункт.nach FROM МаршНачПункт;

Поле со списком 2, источник данных

SELECT МаршКонПункт.konech FROM МаршКонПункт;

 

Кнопка3 – применить фильтр к подчиненной форме.

 

Форма “МаршВводНов”

Ввод данных о новом маршруте.

Источник записей: нет

Элементы:

Поле со списком 1. Источник записей:

SELECT МаршНачПункт.nach FROM МаршНачПункт;

Поле со списком 2. Источник записей:

SELECT МаршКонПункт.konech FROM МаршКонПункт;

 

Кнопка Ввести – запрос МаршВводНов

 

 

 

 

Форма “Автобусы”

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

Источник данных: таблица Автобусы

Элементы:

Подчиненная форма Автобусы1 источник записей – таблица Автобусы

Поле связи: нет

Поле со списком 1 источник данных:

SELECT DISTINCT АвтобТип.type FROM АвтобТип;

Кнопка на запрос ДобавНовАвтоб.

 

Кнопка на вызов запроса на удаление АвтобУдал

 

Форма “Водители”

Выводит данные о водителях. Выбор принятия на работу нового или увольнение.

Источник данных: таблица Водители

Элементы:

Кнопка Общий график на открытие запроса ГрафикЛин_перекрестный

Подчиненная форма ПоКлассам

Источник записей: запрос ПоКлассам

Поле связи: нет

Подчиненная форма МахСтаж

Источник записей: запрос МахСтаж

Поле связи: нет

Кнопка Уволит водителя – запрос ВодтелиУволн

Кнопка Принять водителя – открыть  форму “АнкетаВод”

 

Форма “АнкетаВод”

Вводит данные по принятию нового водителя.

Источник данных: нет

Элементы:

Поле со списком. Источник строк: "A";"B";"C"

Кнопка Принять – вызов запроса  АнкетаВод, после чего данные будут загружены в промежуточную таблицу, и после подтверждения будут перегружены в основную, с помощью запроса АнкетаВодЗагр

 

Форма “НеВышли”

Выводит данные о не вышедших на маршрут  автобусах, и причине.

Источник данных: запрос НеВышли

 

Форма “График работы”

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

Источник данных: нет

Элементы:

Подчиненный запрос: форма: подчиненная форма ГрафикЛин_перекрестный

    запрос: ГрафикЛин_перекрестный

поле связи: нет

Подчиненный запрос: форма: подчиненная форма ГрафикАвтоб_лин_перекрестный

    запрос: ГрафикАвтоб_лин_перекрестный

поле связи: нет

 

Поле со списком “Паспорт”. Источник данных:

SELECT СвободныеВодители.pasp FROM СвободныеВодители;

Поле со списком “Номер автобуса”. Источник данных:

SELECT СвободныеАвтоб.avtob FROM СвободныеАвтоб;

Поле со списком “Номер автобуса”. Источник данных:

SELECT Маршруты.marshr FROM Маршруты;

Кнопка Ввести – на вызов запроса  ВводСтрокиГрафика

 

6. Описание  запросов

Запрос “АвтобУдал”

Удаление записи из таблицы Автобусы.

 

DELETE *

FROM Автобусы

WHERE avtob=Forms!Автобусы!avtobud;

Результат: удалена запись

Forms!Автобусы!avtobud

type


 

Запрос “АнкетаВодЗагр”

Добавляет запись в промежуточную  таблицу ВодителиЗагр

 

INSERT INTO ВодителиЗагр ( Pasp, FIO, staj, klas, data_roj, Adres )

VALUES (Forms!АнкетаВод!pasp, Forms!АнкетаВод!fio, Forms!АнкетаВод!staj, Forms!АнкетаВод!klas, Forms!АнкетаВод!date, Forms!АнкетаВод!Adres);

 

Результат:

Forms!АнкетаВод!pasp

Forms!АнкетаВод!fio

Forms!АнкетаВод!staj

Forms!АнкетаВод!klas

Forms!АнкетаВод!date

Forms!АнкетаВод!Adres


 

 

Запрос “ АнкетаВод”

Добавляет запись в таблицу Водители

 

INSERT INTO Водители

SELECT ВодителиЗагр.Pasp AS Pasp, ВодителиЗагр.FIO AS FIO, ВодителиЗагр.staj AS staj, ВодителиЗагр.klas AS klas, Оклад.Oklad AS Oklad, ВодителиЗагр.data_roj AS data_roj, ВодителиЗагр.Adres AS Adres

FROM ВодителиЗагр, Оклад

WHERE (ВодителиЗагр.klas=Оклад.klass) and

             (ВодителиЗагр.Pasp not in (SELECT Pasp FROM Водители));

 

Результат:

ВодителиЗагр.Pasp

ВодителиЗагр.FIO

ВодителиЗагр.staj

ВодителиЗагр.klas

Оклад.Oklad

ВодителиЗагр.data_roj

ВодителиЗагр.Adres


 

Запрос “ВводСтрокиГрафика”

Добавляет запись в таблицу Водят

 

INSERT INTO Водят ( Pasp, avtob, marshr, [date] )

SELECT Forms![График работы]!pasp, Forms![График работы]!avtob, Forms![График работы]!marshr, Forms![График работы]!date;

 

Результат:

Forms![График работы]!pasp

Forms![График работы]!avtob

Forms![График работы]!marshr

Forms![График работы]!date

Информация о работе Базы данных