From 7294ee71e33dac251d90229c1a28634260055060 Mon Sep 17 00:00:00 2001 From: nik Date: Fri, 24 Oct 2025 22:02:56 +0300 Subject: [PATCH] upd lab1 --- labs/lab1/report.typ | 72 ++++++++++++++++++++------------------------ 1 file changed, 33 insertions(+), 39 deletions(-) diff --git a/labs/lab1/report.typ b/labs/lab1/report.typ index 258711e..cd0313b 100644 --- a/labs/lab1/report.typ +++ b/labs/lab1/report.typ @@ -59,43 +59,38 @@ === Цель работы: -Освоить базовые приёмы установки и настройки субд "postgresql", научиться использовать pgadmin для администрирования, развернуть учебную базу данных "demo" и ознакомиться с её структурой, а также закрепить навыки создания баз данных и схем на примере учебной бд "hr". -Изучение принципов проектирования и администрирования реляционных баз данных в среде postgresql с использованием графического интерфейса pgadmin и языка sql. Освоение создания, изменения и связи таблиц, настройки ограничений целостности, индексов и построения ER-диаграмм. Формирование практических навыков работы с объектами базы данных, добавления и проверки данных, а также документирования структуры базы данных. - +Освоить базовые приёмы установки и настройки субд "postgresql", научиться использовать pgadmin для администрирования, развернуть учебную базу данных "demo" и изучить ее структуру, научиться создавать базы данных и схемы. Научиться создавать, изменять связи таблиц, настройки ограничений, индексов и строить ER-диаграммы. === Задачи, решаемые при выполнении работы. -- Установить и настроить субд postgresql и клиент pgadmin. -- Проверить правильность работы сервера с помощью выполнения тестового запроса. -- Развернуть учебную базу demo и убедиться в доступности её объектов. -- Ознакомиться со структурой базы demo и проанализировать основные сущности. -- Создать учебную базу данных двумя способами: через графический интерфейс и с помощью `CREATE DATABASE`. -- Создать в базе данных hr схемы для группировки объектов. -- Освоить создание таблиц в базе данных с использованием графического интерфейса pgadmin и sql запросов. -- Научиться задавать ключевые параметры таблиц: первичные ключи, автоинкрементные поля, значения по умолчанию и ограничения `NOT NULL`. -- Изучить применение команды `ALTER TABLE` для изменения структуры таблицы без потери данных. -- Создать связи между таблицами (внешние ключи) как через интерфейс pgadmin, так и с помощью sql кода. -- Научиться создавать индексы для оптимизации поиска и сортировки данных. -- Освоить построение и редактирование er диаграмм для визуализации структуры базы данных. -- Научиться добавлять, изменять и проверять данные в таблицах с помощью интерфейса pgadmin и dml запросов. -- Изучить назначение и реализацию ограничений целостности. -- Научиться очищать таблицы с помощью команды `TRUNCATE` и выполнять внешние sql скрипты для заполнения и модификации базы. -- Сформировать целостное представление о создании и сопровождении базы данных на примере модели hr. +- Установить и настроить субд postgresql и pgadmin. +- Проверить сервер с помощью выполнения запроса. +- Развернуть базу demo и проверить что ее объекты доступны. +- Изучить структуру базы demo. +- Создать базу данных двумя способами: через графический интерфейс и с помощью `CREATE DATABASE`. +- Создать в базе данных hr схемы. +- Научиться создавать таблицы в базе данных с использованием графического интерфейса и запросов. +- Научиться задавать параметры таблиц. +- Узнать применение команды `ALTER TABLE`. +- Создать связи между таблицами как через интерфейс, так и с помощью sql. +- Научиться создавать индексы. +- Изучить построение и редактирование er-диаграмм. +- Научиться добавлять, изменять и проверять данные в таблицах с помощью интерфейса и запросов. +- Изучить назначение и реализацию ограничений. +- Научиться очищать таблицы с помощью команды `TRUNCATE`. +- Понимать создание и сопровождение баз данных. === Исходные данные. - Сервер с установленными docker и контейнерами: - postgres:16 — сервер субд postgresql, - - dpage/pgadmin4 — веб-интерфейс для администрирования. + - dpage/pgadmin4 — веб-интерфейс. - Учебная база данных demo. -- субд postgresql и графическая оболочка pgadmin. -- бд hr, содержащая схемы и объекты для работы. -- схема employeesDepartments, созданная на предыдущем этапе. -- sql-скрипты, предоставленные в методических материалах: -- набор заданий, предполагающих создание таблиц employees, departments, locations и других таблиц базы данных hr. -- примерные структуры таблиц и параметры столбцов. -- методические указания по выполнению лабораторных работ и пошаговые инструкции с примерами sql команд и интерфейсных действий. +- Cубд postgresql и pgadmin. +- Бд hr, содержащая схемы и объекты для работы. +- Cхема employeesDepartments. +- SQL-скрипты, из методички. === Выполнение работы. @@ -1010,21 +1005,20 @@ TRUNCATE "Countries"."CURRENCIES"; === Выводы. -В ходе выполнения практической работы я подробно изучил процесс установки и первоначальной настройки системы управления базами данных postgresql, а также освоил работу с графическим интерфейсом pgadmin. При помощи контейнерной среды docker я развернул сервер postgresql и клиентское приложение pgadmin, обеспечив их взаимодействие через общую сеть и корректное подключение по заданным параметрам. +В ходе выполнения работы я изучил установку и настройки postgresql, и освоил работу с pgadmin. При помощи docker я сделал сервер postgresql и pgadmin. В процессе работы я научился: -- создавать и удалять базы данных как через интерфейс pgadmin, так и с помощью sql-команд `CREATE DATABASE` и `DROP DATABASE`; -- использовать параметры локализации (`LC_COLLATE`, `LC_CTYPE`) и шаблоны (`TEMPLATE template0`) при создании баз данных; -- создавать схемы для логического объединения объектов базы данных и разграничения их по смысловым группам; -- разрабатывать таблицы с использованием как графического интерфейса, так и SQL-скриптов, задавая типы данных, значения по умолчанию, первичные ключи, автоинкрементные поля и ограничения `NOT NULL`; -- изменять структуру таблиц с помощью команды `ALTER TABLE`, добавлять новые столбцы, первичные и внешние ключи, а также ограничения целостности и проверки (`CHECK`); -- создавать связи между таблицами и обеспечивать целостность данных за счёт использования внешних ключей (`FOREIGN KEY`); -- добавлять индексы для ускорения поиска и сортировки данных; -- использовать команды dml (`INSERT`, `SELECT`, `UPDATE`, `DELETE`) для добавления, изменения и проверки данных в таблицах; -- очищать таблицы при помощи команды `TRUNCATE` и выполнять внешние sql-скрипты для массового изменения и заполнения данных; +- создавать и удалять базы данных как через pgadmin, так и с помощью sql; +- использовать настройки локализации и шаблоны при создании баз данных; +- создавать схемы для объединения объектов базы и разделения их по группам; +- создавать таблицы с pgadmin и SQL, задавая типы данных, значения по умолчанию, первичные ключи; +- изменять таблицы с помощью `ALTER TABLE`, добавлять столбцы, ключи, а также ограничения, проверки; +- создавать связи между таблицами и обеспечивать целостность данных c помощью внешних ключей; +- добавлять индексы; +- использовать команды dml; +- очищать таблицы при помощи `TRUNCATE` и выполнять внешние sql-скрипты для массового изменения и заполнения данных; - визуализировать структуру базы данных при помощи er-диаграмм, редактировать и экспортировать их. -Кроме того, в процессе работы я разобрался с типовыми ошибками, возникающими при создании баз данных с различными локалями и при несогласованности ключей, и научился устранять их корректной настройкой параметров и порядка выполнения операций. +Кроме того, в процессе работы я разобрался с ошибками, возникающими при создании баз данных с разными локалями и при несогласованности ключей, и научился устранять их настройкой параметров и порядка выполнения операций. -В результате выполнения лабораторной работы я сформировал целостное представление о процессе проектирования, создания и сопровождения реляционных баз данных в postgresql, закрепил навыки администрирования, построения структуры данных, задания связей и ограничений, а также использования инструментов визуального моделирования. Полученные знания и навыки позволяют уверенно работать с субд postgresql и применять её как для учебных, так и для практических проектов.