Ім'я файлу: DT_HW_04_ua.pdf
Розширення: pdf
Розмір: 229кб.
Дата: 03.06.2023
скачати

Курс:
Теорія баз даних
Тема:
Багатотабличні бази даних
Запити
1. Вивести всі можливі пари рядків викладачів та груп.
2. Вивести назви факультетів, фонд фінансування кафедр яких перевищує фонд фінансування факультету.
3. Вивести прізвища кураторів груп та назви груп, які вони курирують.
4. Вивести імена та прізвища викладачів, які читають лекції у групі “P107”.
5. Вивести прізвища викладачів та назви факультетів, на яких вони читають лекції.
6. Вивести назви кафедр та назви груп, які до них належать.
7. Вивести назви дисциплін, які читає викладач “Samantha
Adams”.
8. Вивести назви кафедр, де читається дисципліна “Database
Theory”.
9. Вивести назви груп, що належать до факультету Computer
Science.
10. Вивести назви груп 5-го курсу, а також назву факультетів, до яких вони належать.
11. Вивести повні імена викладачів та лекції, які вони чита- ють (назви дисциплін та груп), причому відібрати лише ті лекції, що читаються в аудиторії “B103”.
1
Домашнє завдання 4

Схема бази даних
Рисунок 1
До цього завдання ми додали скрипт створення структу-
ри бази даних для роботи в рамках поточної теми. Ми кате-
горично рекомендуємо створити базу даних самостійно, без
цього скрипта. Але якщо у вас виникне крайня потреба, ви
можете його використовувати.
SQL файл з базою даних прикріплений до цього PDF-файлу.
Для доступу до матеріалу, завдання необхідно відкрити в про-
грамі Adobe Acrobat Reader.
2
Домашнє завдання 4

Опис
База даних Академія (
Academy
) містить інформацію про співробітників, внутрішній порядок академії та читані лекції.
Викладачі, що читають лекції в академії, представлені у вигляді таблиці Викладачі (
Teachers
), в якій зібрано основну
інформацію, таку як: ім’я, прізвище та дані про зарплату.
Також у базі даних є інформація про групи, що зберіга-
ється в таблиці Групи (
Groups
). Дані про факультети та кафе- дри містяться у таблицях Факультети (
Faculties
) та Кафедри
(
Departments
) відповідно.
Крім цього, база даних зберігає інформацію, пов’яза- ну з лекціями. Розклад лекцій міститься у таблиці Лекції
(
Lectures
), а опис дисциплін, по яких читаються лекції, у та- блиці Дисципліни (
Subjects
).
Таблиці
Нижче наведено детальний опис структури кожної та- блиці.
1. Куратори (Curators)

Ідентифікатор (Id). Унікальний ідентифікатор курато-
ра.

Тип даних — int.

Авто збільшення.

Не може містити null-значення.

Первинний ключ.

Ім’я (Name). Ім’я куратора

Тип даних — nvarchar(max).
3
Домашнє завдання 4


Не може містити null-значення.

Не може бути порожнім.

Прізвище (Surname). Прізвище куратора

Тип даних — nvarchar(max).

Не може містити null-значення.

Не може бути порожнім.
2. Кафедри (Departments)

Ідентифікатор (Id). Унікальний ідентифікатор кафедри.

Тип даних — int.

Авто збільшення.

Не може містити null-значення.

Первинний ключ.

Фінансування (Financing). Фонд фінансування кафе-
дри.

Тип даних — money.

Не може містити null-значення.

Не може бути менше ніж 0.

Значення за замовчуванням — 0.

Назва (Name). Назва кафедри.

Тип даних — nvarchar(100).

Не може містити null-значення.

Не може бути порожнім.

Має бути унікальним.

Ідентифікатор факультету (FacultyId). Факультет, до
складу якого належить кафедра.

Тип даних — int.
4
Домашнє завдання 4


Не може містити null-значення.

Зовнішній ключ.
3. Факультети (Faculties)

Ідентифікатор (Id). Унікальний ідентифікатор факуль-
тету.

Тип даних — int.

Авто збільшення.

Не може містити null-значення.

Первинний ключ.

Фінансування (Financing). Фонд фінансування факуль-
тету.

Тип даних — money.

Не може містити null-значення.

Не може бути менше ніж 0.

Значення за замовчуванням — 0.

Назва (Name). Назва факультету.

Тип даних — nvarchar(100).

Не може містити null-значення.

Не може бути порожнім.

Має бути унікальним.
4. Групи (Groups)

Ідентифікатор (Id). Унікальний ідентифікатор групи.

Тип даних — int.

Авто збільшення.

Не може містити null-значення.
5
Домашнє завдання 4


Первинний ключ.

Назва (Name). Назва групи.

Тип даних — nvarchar(10).

Не може містити null-значення.

Не може бути порожнім.

Має бути унікальним.

Курс (Year). Курс (рік) на якому навчається група.

Тип даних — int.

Не може містити null-значення.

Має бути в діапазоні від 1 до 5.

Ідентифікатор кафедри (DepartmentId). Кафедра, до
складу якої належить група.

Тип даних — int.

Не може містити null-значення.

Зовнішній ключ.
5. Групи та куратори (GroupsCurators)

Ідентифікатор (Id). Унікальний ідентифікатор групи та
куратора.

Тип даних — int.

Авто збільшення.

Не може містити null-значення.

Первинний ключ.

Ідентифікатор куратора (CuratorId). Куратор.

Тип даних — int.

Не може містити null-значення.

Зовнішній ключ.
6
Домашнє завдання 4


Ідентифікатор групи (GroupId). Група.

Тип даних — int.

Не може містити null-значення.

Зовнішній ключ.
6. Групи та лекції (GroupsLectures)

Ідентифікатор (Id). Унікальний ідентифікатор групи та
лекції.

Тип даних — int.

Авто збільшення.

Не може містити null-значення.

Первинний ключ.

Ідентифікатор групи (GroupId). Група.

Тип даних — int.

Не може містити null-значення.

Зовнішній ключ.

Ідентифікатор лекції (LectureId). Лекція.

Тип даних — int.

Не може містити null-значення.

Зовнішній ключ.
7. Лекції (Lectures)

Ідентифікатор (Id). Унікальний ідентифікатор лекції.

Тип даних — int.

Авто збільшення.

Не може містити null-значення.

Первинний ключ.
7
Домашнє завдання 4


Аудиторія (LectureRoom). Аудиторія, в якій читається
лекція.

Тип даних — nvarchar(max).

Не може містити null-значення.

Не може бути порожнім.

Ідентифікатор дисципліни (SubjectId). Дисципліна, по
якій читається лекція.

Тип даних — int.

Не може містити null-значення.

Зовнішній ключ.

Ідентифікатор викладача (TeacherId). Викладач, який
читає лекцію.

Тип даних — int.

Не може містити null-значення.

Зовнішній ключ.
8. Дисципліни (Subjects)

Ідентифікатор (Id). Унікальний ідентифікатор дисци-
пліни.

Тип даних — int.

Авто збільшення.

Не може містити null-значення.

Первинний ключ.

Назва (Name). Назва дисципліни.

Тип даних — nvarchar(100).

Не може містити null-значення.

Не може бути порожнім.
8
Домашнє завдання 4


Має бути унікальним.
9. Викладачі (Teachers)

Ідентифікатор (Id). Унікальний ідентифікатор виклада-
ча.

Тип даних — int.

Авто збільшення.

Не може містити null-значення.

Первинний ключ.

Ім’я (Name). Ім’я викладача.

Тип даних — nvarchar(max).

Не може містити null-значення.

Не може бути порожнім.

Ставка (Salary). Ставка викладача.

Тип даних — money.

Не може містити null-значення.

Не може бути менше або рівним 0.

Прізвище (Surname). Прізвище викладача.

Тип даних — nvarchar(max).

Не може містити null-значення.

Не може бути порожнім.
9
Домашнє завдання 4

скачати

© Усі права захищені
написати до нас