Разработка базы данных «Перевозки» в СУБД PostgreSQL
Автор: Елизавета Громова • Май 20, 2020 • Лабораторная работа • 670 Слов (3 Страниц) • 473 Просмотры
Министерство образования и науки РФ
Федеральное государственное бюджетное образовательное учреждение
высшего образования
«Ярославский государственный технический университет»
Кафедра «Информационные системы и технологии»
Отчет защищен
с оценкой ________
Преподаватель
____________О.Д. Михайлов
«___» ____________ 2020
РАЗРАБОТКА БАЗЫ ДАННЫХ «Перевозки»
в СУБД PostgreSQL
Отчет о лабораторной работе №2
по курсу “Управление данными”
ЯГТУ 09.03.02-018 ЛР
Отчет выполнил
студент гр. ЭИС-24
____________ Е.В. Попова
«___» ____________ 2020
2020
Цель: получить навыки написания sql-скриптов для описания структуры базы данных (DDL) и манипулирования данными (DML).
Задачи: Создать базу данных и необходимое количество взаимосвязанных таблиц в соответствие с логической моделью данных, заполнить таблицы данными с помощью конструкций языка SQL.
Ход выполнения работы
Задание 1
Создать базу данных (далее - БД). В качестве имени БД указать свою фамилию и инициалы на английском языке в формате «ФамилияИО».
[pic 1]
Задание 2
Написать и выполнить SQL-запросы на создание таблиц. Удалить одну из таблиц с целью ознакомления с командой DROP. Восстановить удалённую таблицу.
CREATE TABLE zakazchik (
zakazchika_id Serial PRIMARY KEY,
familiya varchar(30) NOT NULL,
imya varchar(30) NOT NULL,
otchestvo varchar(30) NULL,
telefon varchar(12) NOT NULL,
elektronnaya_pochta varchar(50) NULL
);
CREATE TABLE zayavka(
zayavki_id Serial PRIMARY KEY,
datee timestamptz NOT NULL,
punkt_otpravleniya varchar(50) NOT NULL,
punkt_naznacheniya varchar(50) NOT NULL,
zakazchika_id int NOT NULL,
FOREIGN KEY(zakazchika_id) REFERENCES zakazchik(zakazchika_id)
);
CREATE TABLE passport_dan(
pasport_id Serial PRIMARY KEY,
seriya varchar(10) NOT NULL,
nomer varchar(10) NOT NULL,
data_vydachi date NOT NULL,
kem_vydan varchar(30) NOT NULL,
kod_podrazdeleniya varchar(10) NOT NULL,
zakazchika_id int NOT NULL,
FOREIGN KEY(zakazchika_id) REFERENCES zakazchik(zakazchika_id)
);
CREATE TABLE address(
adresa_id Serial PRIMARY KEY,
gorod varchar (20) NOT NULL,
ulitsa varchar (20) NOT NULL,
dom varchar (10) NOT NULL,
korpus varchar(30) NULL,
kvartira int NOT NULL,
pochtovy_indeks varchar(30) NOT NULL,
zakazchika_id int NOT NULL,
FOREIGN KEY(zakazchika_id) REFERENCES zakazchik(zakazchika_id)
);
CREATE TABLE ed_izmereniya(
edizmereniya_id Serial PRIMARY KEY,
nazvaniye_edizmereniya varchar(10) NOT NULL
);
CREATE TABLE gruz(
gruza_id Serial PRIMARY KEY,
naimenovaniye varchar(10) NOT NULL,
material varchar(20) NOT NULL,
ves int NOT NULL,
edizmereniya_id int NOT NULL,
FOREIGN KEY(edizmereniya_id) REFERENCES ed_izmereniya(edizmereniya_id)
);
CREATE TABLE transport(
transporta_id Serial PRIMARY KEY,
gosnomer varchar(10) NOT NULL,
marka varchar(20) NOT NULL,
model varchar(20) NOT NULL,
gruzopodyemnost varchar(10) NOT NULL,
raskhod_topliva varchar(20) NOT NULL,
gabarity varchar(20) NOT NULL
);
CREATE TABLE dostavka(
dostavki_id Serial PRIMARY KEY,
data_vozvrashcheniya timestamptz NOT NULL,
data_otpravleniya timestamptz NOT NULL,
data_pribytiya timestamptz NOT NULL,
gruza_id int NOT NULL,
transporta_id int NOT NULL,
zayavki_id int NOT NULL,
Kolichestvo_gruza int NOT NULL,
Rasstoyaniye varchar(30) NOT NULL,
FOREIGN KEY(gruza_id) REFERENCES gruz(gruza_id),
FOREIGN KEY(transporta_id) REFERENCES transport(transporta_id),
FOREIGN KEY(zayavki_id) REFERENCES zayavka(zayavki_id)
...