Главная страница

Практическое задание 1 Пассажиры автовокзала


Скачать 415.58 Kb.
НазваниеПрактическое задание 1 Пассажиры автовокзала
Дата17.10.2022
Размер415.58 Kb.
Формат файлаdocx
Имя файлаpr1bd.docx
ТипДокументы
#738542

Практическое задание №1

«Пассажиры автовокзала»

Задание

  1. Провести анализ предметной области и построить информационную модель БД от руки на листе бумаги, используя геометрические фигуры (прямоугольники и соединительные линии). Модель должна состоять не менее чем из 5 таблиц. Определить атрибуты, ключи и связи.

Заполнить таблицу, представленную ниже, в приложении А.
Выполнение




Имя атрибута

на руск.яз.

Имя атрибута

на англ.яз.

Назначение

Описание

Тип данных

Размерность

Условие проверки вводимого значения

Вычисление значения

Возможны

Null-значения

Значение, атрибута по умолчанию

Набор допустимых значений

1

2

3

4

5

6

7

8

9

10

11

id_пункта

point_id

Код пункта назначения

Первичный ключ (суррогатный)

tinyint

от 0 до 255

автоинкремент

-

-

-

-

пункт назначения

dest_point

Название

-

varchar(30)

-

Исключен ввод латинских букв и цифр

-

-

-

-

Таблица Пункт назначения

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

Имя атрибута

на руск.яз.

Имя атрибута

на англ.яз.

Назначение

Описание

Тип данных

Размерность

Условие проверки вводимого значения

Вычисление значения

Возможны

Null-значения

Значение, атрибута по умолчанию

Набор допустимых значений

1

2

3

4

5

6

7

8

9

10

11

id_автобуса

bus_id

Код автобуса

Первичный ключ (суррогатный)

tinyint

от 0 до 255

автоинкремент

-

-

-

-

марка

brand

Марка автобуса

-

varchar(20)

-

Исключен ввод посторонних символов

-

-

-

-

Число мест

count_pos

Вместимость

-

tinyint

от 0 до 255

Исключен ввод букв и символов

-

-

-

числа от 0 до 60

Номер

number

Госномер ТС

-

varchar(20)

-

Исключен ввод латинских букв

-

-

-

Формат <б><3ц><2б><рег>

Водитель

driver

Водитель ТС

-

varchar(30)

-

Исключен ввод латинских букв и цифр

-

-

-

ФИО


Таблица Маршрут

Имя атрибута

на руск.яз.

Имя атрибута

на англ.яз.

Назначение

Описание

Тип данных

Размерность

Условие проверки вводимого значения

Вычисление значения

Возможны

Null-значения

Значение, атрибута по умолчанию

Набор допустимых значений

1

2

3

4

5

6

7

8

9

10

11

id_маршрута

route_id

Код маршрута

Первичный ключ (суррогатный)

tinyint

0..255

-

-

-

-

0..255

Пункт отправления

arr_point

Название н.п. отправления

Внешний ключ таб. Пункт назначения

tinyint

0..255

-

-

-

-

0..255

Пункт прибытия

dest_point

Название н.п. прибытия

Внешний ключ таб. Пункт назначения

tinyint

0..255

-

-

-

-

0..255

Регулярность

days

Дни, по которым выполняется маршрут

-

varchar(20)

-

Исключен ввод латинских букв

-

-

Ежедневно

-

Время в пути

time_on_road

Время в пути в минутах

-

smallint

0..32767

-

время приб – время отпр

-

-

-


Таблица Остановка

Имя атрибута

на руск.яз.

Имя атрибута

на англ.яз.

Назначение

Описание

Тип данных

Размерность

Условие проверки вводимого значения

Вычисление значения

Возможны

Null-значения

Значение, атрибута по умолчанию

Набор допустимых значений

1

2

3

4

5

6

7

8

9

10

11

id_остановки

station_id

Код остановки

Суррогатный первичный ключ

tinyint

0..255

-

-

-

-

-

id_маршрута

route_id

Код маршрута

Внешний ключ таб. Маршрут

tinyint

0..255

-

-

-

-

-

id_пункта

point_id

Код н.п.

Внешний ключ таб. Пункт назн.

tinyint

0..255

-

-

-

-

-

Время стоянки

stand_time

Время стоянки ТС на остановке

-

smallint

0..32767

Только цифры

-

-

-

-


Таблица Рейс

Имя атрибута

на руск.яз.

Имя атрибута

на англ.яз.

Назначение

Описание

Тип данных

Размерность

Условие проверки вводимого значения

Вычисление значения

Возможны

Null-значения

Значение, атрибута по умолчанию

Набор допустимых значений

1

2

3

4

5

6

7

8

9

10

11

id_рейса

trip_id

Код рейса

Суррогатный первичный ключ

tinyint

0..255

-

-

-

-

-

id_маршрута

route_id

Код маршрута

Внешний ключ таб. Маршрут

tinyint

0..255

-

-

-

-

-

Время отпр.

arr_time

Время отправления ТС

-

datetime

-

Значение в часах и минутах ЧЧ:ММ

-

-

-

-

Время приб.

dest_time

Время прибытия ТС

-

datetime

-

Значение в часах и минутах ЧЧ:ММ

-

-

-

-

id_автобуса

bus_id

Код автобуса

Внешний ключ таб. Автобус

tinyint

0..255

-

-

-

-

-

Цена билета

ticket_price

Цена билета от пункта А до В

-

float

0..5000

Неотрицательное число

Если есть льготы, то price = price * 0,01 * (скидка в %)

-

-

-


Таблица Билет

Имя атрибута

на руск.яз.

Имя атрибута

на англ.яз.

Назначение

Описание

Тип данных

Размерность

Условие проверки вводимого значения

Вычисление значения

Возможны

Null-значения

Значение, атрибута по умолчанию

Набор допустимых значений

1

2

3

4

5

6

7

8

9

10

11

id_билета

ticket_id

Код билета

Суррогатный первичный ключ

tinyint

0..255

-

-

-

-

-

id_рейса

trip_id

Код рейса

Внешний ключ таб. Рейс

tinyint

0..255

-

-

-

-

-

Номер места

pos_number

Занимаемое пассажиром место в ТС

-

tinyint

1..60

Целочисленное положительное значение

-

-

-

-

id_пассажира

pass_id

Код пассажира

Внешний ключ таблицы Пассажир

tinyint

0..255

-

-

-

-

-


Таблица Пассажир

Имя атрибута

на руск.яз.

Имя атрибута

на англ.яз.

Назначение

Описание

Тип данных

Размерность

Условие проверки вводимого значения

Вычисление значения

Возможны

Null-значения

Значение, атрибута по умолчанию

Набор допустимых значений

1

2

3

4

5

6

7

8

9

10

11

id_пассажира

pass_id

Код пассажира

Суррогатный первичный ключ

tinyint

0..255

-

-

-

-

-

ФИО пассажира

pass_name

Имя пассажира, купившего билет

-

varchar(30)

-

Исключаются латинские буквы и цифры

-

-

-

-

Документ

document

Паспорт (в случае льготы льготный документ)

-

varchar(20)

-

Исключаются кириллические буквы

-

-

-

-


написать администратору сайта