з дисципліни «Проектування баз даних».
Завдання 1 Нормалізація таблиць бази даних
Виявити всі можливі функціональні залежності між атрибутами таблиці «Успішність» (Код_ст, ном_зач, фам_ст, Дата_Р, тел, дохід; Код_пр. Фам_пр, должн, оклад; Код_д, дисцип, сем, годин, дата_сд, оцінка), якщо відомо, що для значень атрибутів цієї таблиці задані наступні обмеження:
- коди присвоюються індивідуально, відповідно, студенту, викладачеві і дисципліни,
- серед студентів і викладачів можуть бути однофамільці,
- викладач може займати тільки одну посаду,
- кожен викладач може приймати іспити з кількох дисциплін і один іспит можуть приймати кілька викладачів,
- дозволяється перескладання іспитів,
- всі студенти числяться в одній групі.
Для заданого набору атрибутів таблиці «Успішність» визначити всі потенційні ключі і вибрати для неї первинний ключ.
При цьому неприпустимо використовувати в якості первинного ключа додатковий атрибут.
Оцінити надмірність даних в цій таблиці і виконати нормалізацію вихідної таблиці «Успішність». таким чином, щоб кожна отриманих таблиць перебувала в третій нормальній або третьої посиленої нормальній формі.
Вибрати для кожної з отриманих нормалізованих таблиць первинні або зовнішні ключі, визначити зв'язки між ними.
Перевірити адекватність отриманої багатотабличного бази даних вихідної.
Завдання 2 Створення і модифікація табліцсредствамі СУБДAccess
За допомогою конструктора СУБД Access створити таблиці бази даних, отримані в завданні 1. заповнити їх довільними початковими даними, враховуючи, що в групі числиться не менше трьох-п'яти студентів, кожен з яких здає не менше чотирьох іспитів і отримує різні оцінки.
У разі необхідності відредагувати створену таблицю:
Наприклад, замінити введені дані по студенту Іванову на свої або
видалити і відновити дані по студенту з будь-якої введеної прізвищем.
Оцінити трудомісткість модифікації створеної таблиці.
Задати для кожної з отриманих нормалізованих таблиць первинні і зовнішні ключі і встановити між ними зв'язки з перевіркою умов цілісності багатотабличного бази даних.
Виконати перевірку умов цілісності створеної багатотабличного бази даних.
Завдання 3 Створення запитів для багатотабличних баз даних засобами СУБДAccess
Для створеної багатотабличного бази данних.с допомогою конструктора розробити і виконати наступні запити:
- результати здачі екзаменаційної сесії студентом Івановим,
- дисципліни, за якими студент Іванов отримав оцінки, відповідно, добре, добре, Задовільно або незадовільно,
- прізвища студентів, які отримали Відмінно і Добре з усіх дисциплін,
- прізвища студентів, які отримали Відмінно по одній будь-якої дисципліни,
- прізвища студентів, які отримали Незадовільно з усіх дисциплін,
- результати здачі студентами іспиту з однієї заданої дисципліни,
- середній бал конкретного студента з усіх дисциплін,
- середній бал групи студентів з усіх дисциплін,
- середній бал групи студентів з кожної дисципліни,
- середній бал групи студентів по кожному викладачеві.
3. Обчислити розмір премії, виданої
- студенту по заданій дисципліні, якщо за кожен бал позитивної оцінки видається по 100 рублів,
- студентам по заданій дисципліні, якщо за кожен бал позитивної оцінки видається по 150 рублів,
- одному студенту з усіх дисциплін, якщо за кожен бал позитивної оцінки видається по 100 рублів
- всій групі з усіх дисциплін, якщо за кожен бал позитивної оцінки видається по 100 рублів.
4. Підрахувати за результатами екзаменаційної сесії кількість відмінників, успішних, неуспішних, а також здали всі на 4 і 5. з кожної дисципліни, по кожному викладачеві і всій групі.
Завдання 4 Створення звітів засобами СУБДAccess
1.Для багатотабличного бази даних реалізувати нижче перераховані звіти:
- екзаменаційну відомість із зазначенням кількості студентів отримали оцінки 5,4.3,2 і н а / с;
- сторінку залікової книжки;
- звіт про результати здачі екзаменаційної сесії по кожному викладачеві із зазначенням кількості студентів отримали оцінки 5,4.3,2 і н / я і середнього бала.
Завдання 5 Створення форм засобами СУБДAccess
1. Для багатотабличного бази даних розробити нижче перераховані форми:
- для всіх нормалізованих таблиць,
- для всіх запитів,
2. Розробити структуру інформаційної системи «Сесія».
3. Згрупувати форми для однотипних запитів і для кожної отриманої групи форм розробити відповідні кнопкові форми, присвоївши їм імена відповідних функціональних підсистем.
4. Розробити сценарій виклику форм і розробити головну кнопкову форму інформаційної системи «Сесія».
Завдання 6 Створення запитів засобами язикаSQL
1. Розробити запити для вибірки з вихідної таблиці 1 даних, відповідно, тільки по студентам, викладачам і дисциплін, а також створити запит «Оцінки» з полями Фам_ст. Фам_пр, дисципл, Дата_сд, Оцінка.
2. Для багатотабличного бази даних на язикеSQL розробити і виконати нижче перераховані запити:
- результати здачі екзаменаційної сесії студентом Івановим,
- дисципліни, за якими студент Іванов отримав оцінки, відповідно, відмінно, добре, задовільно чи незадовільно,
- прізвища студентів, які отримали відмінно і добре з усіх дисциплін,
- прізвища студентів, які отримали відмінно по одній будь-якої дисципліни,
- прізвища студентів, які отримали Незадовільно з усіх дисциплін,
- результати здачі студентами іспиту з однієї заданої дисципліни,
- середній бал конкретного студента з усіх дисциплін,
- середній бал групи студентів з усіх дисциплін,
- середній бал групи студентів з кожної дисципліни,
- середній бал групи студентів по кожному викладачеві.
3. Обчислити розмір премії, виданої
- студенту по заданій дисципліні, якщо за кожен бал позитивної оцінки видається по 100 рублів,
- студентам по заданій дисципліні, якщо за кожен бал позитивної оцінки видається по 150 рублів,
- одному студенту з усіх дисциплін, якщо за кожен бал позитивної оцінки видається по 100 рублів
- всій групі з усіх дисциплін, якщо за кожен бал позитивної оцінки видається по 100 рублів.
4. Підрахувати за результатами екзаменаційної сесії кількість відмінників, успішних, неуспішних, а також здали всі на 4 і 5. з кожної дисципліни, по кожному викладачеві і всій групі.