Файл: У чету об мен а жилплощади.docx

ВУЗ: Не указан

Категория: Отчет по практике

Дисциплина: Не указана

Добавлен: 06.11.2023

Просмотров: 14

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Министерство науки и высшего образования Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

высшего образования

«Псковский государственный университет»

Передовая инженерная школа гибридных технологий в станкостроении Союзного государства

Кафедра информационно-коммуникационных технологий
Отчёт по курсовому проекту

по дисциплине

Управление данными

на тему

«Учету обмена жилплощади»


Группа: 1024-03

Студент: Минаев А.Д.

Преподаватель: Вертешев А.С.

Псков

2023

Содержание

1 Задание 3

2 Проектирование базы данных 4

2.1 Проектирование и организация данных 4

2.2 Создание базы данных 7

3. Запросы для базы данных 8



1 Задание


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

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

Проект должен состоять из объекты: районы, клиенты, жилье, обмены жилья, тип жилья.

Для моделирования задачи необходимо хранить следующую информацию:

* ФИО клиента

* Адрес места работы клиента с указанием района

* Характеристика жилья (адрес, район, размер жилья)

* Тип жилья (1, 2, 3, -комнатная квартира)

* Обмен жилплощади (было, стало)

* Дата обмена
Дополнительные условия:

* один клиент может произвести несколько обменов жилья.

2 Проектирование базы данных

2.1 Проектирование и организация данных


На рисунке 2.1 представлена спроектированная структура базы данных:




рис 2.1 структура базы данных
В таблице 2.1 описана таблица clients – клиенты. Таблица clients служит для хранения информации о контактных данных клиента.



Таблица 2.1 Описание таблицы clients


Имя поля

Тип данных

Ключ

Описание

id

int4(serial)

Первичный

Код клиента

first_name

varchar(50)




Имя клиента

surname

varchar(50)




Фамилия клиента

patronymic

varchar(50)




Отчество клиента

work_address_id

int4

Внешний

Код адреса работы клиента


В таблице 2.2 описана таблица works_address_clients – рабочие адреса клиентов. Таблица works_address_clients служит для хранения информации о рабочем адресе клиентов с указанием района их работы.

Таблица 2.2 Описание таблицы works_address_clients

В таблице 2.3 описана таблица changes – новости. Таблица changes служит для хранения информации о смене клиентами квартир/домов с указанием даты смены, а так же о их настоящем месте проживания.

Таблица 2.3 Описание таблицы changes
В таблице 2.4 описана таблица houses – квартиры/дома. Таблица houses служит для хранения информации о квартирах/домах, которые были сменены или доступны для смены.

Таблица 2.4 Описание таблицы houses
В таблице 2.5 описана таблица types – типы. Таблица types служит для хранения информации о типах жилья.

Таблица 2.5 Описание таблицы types
В таблице 2.6 описана таблица areas– квартиры/дома. Таблица areas служит для хранения информации о районах, которые есть в городе.

Таблица 2.6 Описание таблицы areas

2.2 Создание базы данных


Создание таблицы clients:

CREATE TABLE clients (

id integer(serial),

first_name character varying(50) NOT NULL,

last_name character varying(50) NOT NULL,

patronymic character varying(50) NOT NULL, work_address_id integer,

CONSTRAINT clients_pkey PRIMARY KEY (id),

CONSTRAINT cl_work_ad_fk FOREIGN KEY (work_address_id) REFERENCES work_address (id) ON UPDATE CASCADE ON DELETE SET NULL);

Создание таблицы works_address_clients:
Создание таблицы changes:
Создание таблицы houses:
Создание таблицы types:
Создание таблицы areas:

3. Запросы для базы данных


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



1)Три запроса на выборку с использованием join, использовать не мене 3 таблиц (3)

select * from clients client JOIN

changes change ON(client.id = change.client_id) JOIN

houses house ON(change.current_address_id = house.id);

select * from clients client JOIN

changes change ON(client.id = change.client_id) JOIN

houses house ON(change.current_address_id = house.id);
2) Запросы на объединение, пересечение, разность, произведение, проекцию, деление (6)

Ошибка: источник перекрёстной ссылки не найден2) Запросы на объединение, пересечение, разность, произведение, проекцию, деление (6)

3) Запросы на соединение: left join, right join, full outer join (3)

4) 2 подзапроса: простой, сложный (2)

5) Запросы с различными уровнями вложенности подзапросов в частях select, From where, having (4)

6) Создание ролей пользователей user, guest (2)

CREATE ROLE user;

CREATE ROLE guest;

createuser user

\h CREATE ROLE – опции доступа

7) Создание двух транзакций с тремя точками восстановления на удаление, создание транзакции на вставку (3)

8) Создание двух представлений: изменяемое, неизменяемое (2)

9) Шифрование столбцов (1 запрос)

10) Расшифровка столбцов (1)

11) Перекрестные запросы (2)

12) Запрос на перевод в формат JSON (1)

13) Запрос на перевод в формат XML (2)