MS ACCESS Проектування баз даних. Завдання для курсового
MS ACCESS Проектування баз даних
Завдання для курсового проекту Школа іноземних мов Система повинна забезпечити збереження й обробку даних про: назву навчального курсу; вартість навчання за 1 місяць (залежить від навчального курсу); тривалість навчання (залежить від навчального курсу, кількість місяців); П.І.Б. учня; дату народження; адресу; № договору (окремий договір на вивчення кожного мовного курсу); дату зачислення на навчання; дату сплати за навчання (сплата може вноситись частинами); суму сплати. Прикладна система повинна відповідати на наступні запити: визначати мову, вивчення якої найдорожче; визначати учнів, які мають заборгованість за навчання; Прикладна система повинна формувати наступні звіти: дані про учнів, які вивчають вибрану (через форму) мову; діаграму сумарного прибутку школи по місяцях поточного року; Додаткові вимоги: Система повинна автоматично визначати суму повної оплати за навчання кожного учня і не дозволяти вносити сплату, що перевищує загальну вартість навчання. Система повинна надавати знижку 5% у тому разі, якщо студент вивчає вже не перший мовний курс. Введення даних в усі таблиці та робота з ними, а також запуск запитів та звітів повинні виконуватися через форми, створені користувачем.
Проектування структури бази даних Основні етапи проектування бази даних: Визначення мети створення бази даних. Визначення таблиць, що їх повинна містити база даних. Визначення необхідних у таблиці полів. Визначення зв'язків між таблицями.
Мета створення бази даних “Школа іноземних мов” База призначена для ведення обліку про: Навчальні курси (яка мова вивчається, скільки триває вивчення, скільки це коштує) Учнів (прізвище, вік, адреса, інші індивідуальні дані) Фінансового обліку (сплати, борги, надані знижки) Документи (укладені договори, отримані свідоцтва і т.п.)
Аналіз предметної області Логіка і здоровий глузд підказують, що при збереженні даних у базі даних повинні бути забезпечені наступні умови: Один договір заключається між школою іноземних мов і учнем щодо вивчення одного певного мовного курсу (наприклад, французька ділова мова, англійська для початківців і т.п.). Один мовний курс можуть вивчати багато учнів. Один учень може вивчати дві або більше мов одночасно. Сплата за навчання може бути внесена один раз у повному обсязі або частинами на протязі курсу навчання. Сплата зараховується по кожному договору окремо.
Визначення таблиць У відповідності до завдання система повинна забезпечити збереження й обробку даних про: назву навчального курсу (мова); вартість навчання за 1 місяць (залежить від навчального курсу); тривалість навчання (залежить від навчального курсу, кількість місяців); П.І.Б. учня; дату народження; адресу; № договору (окремий договір на вивчення кожного мовного курсу); дату зачислення на навчання; дату сплати за навчання (може вноситись частинами); суму сплати. Дані про учнів Дані про мови Дані про укладені договори Дані про сплати за навчання
Визначення таблиць Таблиця Дані про учнів буде містити такі поля: Прізвище учня; Ім’я учня По-батькові учня; Дата народження; Адреса; Для ідентифікації кожного учня потрібне поле, дані у якому не будуть повторюватись. У проекті таблиці такого поля немає. Таким полем може бути № та серія паспорта, № студентського квитка або просто поле Код учня (лічильник). Тип поля Текстовий; Текстовий; Текстовий; Дата/Час; Текстовий; Лічильник Назва поля Прізвище учня; Ім’я учня По-батькові учня; Дата народження; Адреса; Код учня Поле-ідентифікатор
Приклад таблиці
Визначення таблиць Таблиця Дані про мови буде містити такі поля: назва мови вартість навчання за 1 місяць тривалість навчання Для ідентифікації кожного навчального курсу (мови) потрібне поле, дані у якому не будуть повторюватись. Додамо поле Код курсу (лічильник). Тип поля Текстовий; Грошовий; Числовий; Лічильник Назва поля назва мови вартість навчання за 1 місяць тривалість навчання код курсу Поле-ідентифікатор
Приклад таблиці
Визначення таблиць Таблиця Договори буде містити такі поля: № договору дату зачислення на навчання; Кожен договір має свій унікальний № договору. У договорі вказана дата зачислення на навчання. Дату закінчення немає потреби зберігати – вона легко обчислюється в залежності від тривалості навчання. Оскільки договір заключається між школою і учнем щодо вивчення конкретного мовного курсу, то ці дані повинні бути відображені у таблиці договори так, щоб уникнути надмірного дублювання даних. Тип поля Числовий; Дата/Час; Числовий; Числовий Назва поля № договору дата зачислення на навчання; код курсу код учня Поле-ідентифікатор
Приклад таблиці
Визначення таблиць Таблиця Сплати за навчання буде містити такі поля: суму сплати; дату сплати; Сплата вноситься окремо по кожному договору. Сплата може вноситись частинами кілька разів по одному договору. Жодне з полів не є унікальним. Наявність унікального індексу тут не є обов’язковою. При потребі, можна додати унікальне поле № квитанції про сплату. Тип поля Числовий; Грошовий; Дата/Час; Назва поля № договору сума сплати; дата сплати;
Приклад таблиці
Зв’язки у базі даних Один мовний курс можуть вивчати багато учнів. Один учень може вивчати дві або більше мов одночасно. Сплата за навчання може бути внесена один раз у повному обсязі або частинами на протязі курсу навчання. ---Таблиці “Дані про мови” і “Дані про учнів” можуть бути зв’язані через третю таблицю “Договори”. Тип звязку один-до-багатьох: один учень може заключати кілька договорів на вивчення різних мов, один мовний курс можуть вивчати одночасно багато учнів. ---Таблиця “Договори” зв’язана з таблицею “Сплати” звязком один-до-багатьох: за одним договором може бути кілька сплат.
Схема даних Саме таке зображення, намальоване на аркуші паперу, потрібно показати вашому викладачеві на етапі проектування бази даних
ms_access.ppt
- Количество слайдов: 16