Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лаб 16 УД Голиков Илья

.docx
Скачиваний:
4
Добавлен:
10.05.2023
Размер:
219.31 Кб
Скачать

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ

УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ

ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ

(НИУ «БелГУ»)

ИНСТИТУТ ИНЖЕНЕРНЫХ И ЦИФРОВЫХ ТЕХНОЛОГИЙ

КАФЕДРА ИНФОРМАЦИОННЫХ И РОБОТОТЕХНИЧЕСКИХ СИСТЕМ

Отчет по лабораторной работе № 16

Тема работы «Язык SQL. Использование языка описания данных DDL»

по дисциплине “Управление данными”

студента (ки) очного отделения

2 курса 12002105 группы

Голикова Ильи Александровича

Проверил:

Асс. Лысакова Татьяна Андреевна

(ученая степень, звание, Фамилия Инициалы)

Белгород

2023

Цель работы

Изучить основы языка описания данных DDL в SQL, применить полученные знания для физического проектирования баз данных.

Ход работы

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

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

Рисунок 1 – Схема созданной базы данных

База данных была создана с помощью кода на языке DDL, сервера mysql и инструмента визуального проектирования баз данных MySQL Workbench.

Код DDL для генерации базы данных и её структуры:

create database maindb;

use maindb;

create table period(

period varchar (7) primary key not null

) engine = InnoDB;

create table invoice (

invoice_id int primary key auto_increment,

is_paid int

) engine = InnoDB;

create table list_of_services(

name_of_service varchar(40) primary key,

unit varchar(20),

unit_price float

) engine = InnoDB;

create table apartment(

apartment_id int primary key auto_increment,

area float

) engine = InnoDB;

create table repair_request(

request_id int primary key auto_increment,

description varchar(300),

is_completed int1

) engine = InnoDB;

create table payer(

payer_id int primary key auto_increment,

full_name varchar(50),

address varchar(150),

date_of_birth date,

phone varchar(15)

);

create table house(

house_id int primary key auto_increment,

address varchar(150),

number_of_floors int4,

year_of_construction int

);

create table rendered_services(

rs_id int primary key auto_increment,

number_of_units float

);

alter table apartment

add column payer_id int,

add column house_id int,

add constraint fk_payer_id foreign key (payer_id) references payer(payer_id),

add constraint fk_house_id foreign key (house_id) references house(house_id);

alter table repair_request

add column apartment_id int,

add foreign key (apartment_id) references apartment(apartment_id);

alter table invoice

add column apartment_id int,

add constraint fk_apartment_id foreign key (apartment_id) references apartment(apartment_id),

add column period varchar(7),

add constraint fk_period foreign key (period) references period(period);

alter table rendered_services

add column invoice_id int,

add constraint fk_invoice_id foreign key(invoice_id) references invoice(invoice_id),

add column name_of_service varchar(40),

add constraint fk_name_of_service foreign key (name_of_service) references list_of_services(name_of_service);

Вывод

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