Семестровое задание
Целью семестрового задания является отработка навыков проектирования БД.
Постановка задачи
Задание состоит из следующих задач:
- Составить спецификацию в виде задач (min 5), которые требуется выполнить на разрабатываемой БД. Задача представляет из себя описание данных (и полей), которые необходимо вернуть (на естественном языке). Например, "получить список всех студентов (ФИО, ID, номер группы) факультета ИВМиИТ".
- Составить ER-диаграмму, описывающую схему БД. В диаграме должны присутствовать все поля, первичные и внешние ключи, связи с соответсвующей маркировкой (one-to-many, one-to-one, etc).
- Составить скрипт создания БД, соответствующей описанной ERD. В скрипте должны присутствовать всевозможные ограничения (
constraints
):NOT NULL
,DEFAULT
,CHECK
на поле и на таблицу,REFERENCES
,UNIQUE
,PRIMARY KEY
. - Составить скрипт заполнения БД. В каждой таблице должно быть минимум 10 записей.
- Составить
SELECT
-запросы, соответствующие постановке задач из п.1.
Требование к оформлению задания
- Задание залито в репозиторий на сайте www.github.com.
- Все файлы хранятся в корне репозитория.
- В файле
README.md
в содержится следующая информация:- ФИО студента
- название проекта
- описание предметной области, решаемая проблема
- спецификация проекта (описание задач, п.1)
- описание файлов в репозитории.
- Приветствуется надлежащее оформление файла
README.md
с использованием языка разметкиmarkdown
. - ERD хранится в файле
erd.png
илиerd.jpg
. SQL
-скрипты валидны (то есть могут быть запущены без внесения изменений) и хранятся в файлах с расширением*.sql
:create.sql
,insert.sql
,select.sql
.
Требования к сдаче задания
- Создается новая ветка
semestr-project
, в которой делается все задание. - Создается pull-request (PR) ветки в свой репозиторий.
- В случае необходимости произвести доработки, в PR появятся комментарии и PR будет отклонен.
- После внесения соответствующих доработок, необходимо заново открыть PR.
- После одобрения (approve) изменений, ветку необходимо слить (merge) в
master
-ветку.