Алгоритм створення нової таблиці Тема: Розробка моделі «сутність-зв'язок» заданої предметної області. Створення бази даних в середовищі СУБД MS Access Мета:Навчитись створювати реляційні бази даних використовуючи СУБД MS Access, зокрема таблиці бази даних у режимі Конструктора; визначати тип даних, створювати зв’язки між таблицями. Теоретичні відомості Поняття про бази даних та СУБД Дані – це інформація, зафіксована (закодована) у певній формі, придатній для подальшої обробки, зберігання і використання. Базою даних називають сукупність взаємопов'язаних даних деякої предметної галузі, що зберігається в пам'яті ЕОМ та організовані так, що їх можна використовувати для розв'язування багатьох задач різними користувачами. Приклади: БД щодо наявності медикаментів; БД у системі розкладу літаків, поїздів або БД продажу квитків транспорту; БД документів учнів школи, картотека відділу кадрів або в бібліотеки тощо. Поява комп'ютерної техніки підвищила ефективність роботи з базами даних. Доступ до даних та керування ними відбувається в середовищі спеціального програмного пакету – системи управління базами даних (СУБД). Системою управління базами даних називають сукупність програм і мовних засобів, за допомогою яких реалізується централізоване управління даними в базі, доступ до них і забезпечується взаємодія бази з прикладними програмами. При створенні БД розрізняють такі етапи: Þ проектування; Þ створення структури БД; Þ заповнення БД даними та їх редагування. БД класифікують як фактографічні та документальні. У фактографічних базах даних містяться короткі відомості про об'єкти, що описуються, подані в точно визначеному форматі. Наприклад: бази даних книжкового фонду бібліотеки (відомості про книжку: рік видання, автор, видавництво, тощо), наявність авіаквитків в касі. Бази даних стосовно законодавчих актів в галузі карного права, сучасної музики напевно будуть організовані як документальні. Перша з них буде містити тексти законів; друга – тексти і ноти пісень, біографічну і довідкову інформацію про життя і творчість композиторів, поетів, виконавців, звукові записи і відео кліпи. За структурою організації інформації в БД розрізняють такі моделі баз даних: Ø ієрархічна; Ø мережева; Ø реляційна. Ієрархічна модель бази даних.Цямодель являє собою структуру даних, які впорядковані за підляганням від загального до конкретного; нагадує «дерево» (граф), тому має такі самі параметри: рівень, вузол, зв'язок. Модель працює за таким принципом: кілька вузлів нижчого рівня з'єднуються за допомогою зв'язку з одним вузлом вищого рівня. Мережева модель бази даних. Загальним виглядом вона схожа на ієрархічну. Має такі самі складові структури, вирізняється характером відношення між ними. Між елементами структури довільний, не обмежений кількістю елементів зв'язок. Найбільш поширеними є реляційні БД. Реляційною БД називають базу даних, що містить інформацію, подану у відповідних прямокутних таблицях. Така таблиця називається відношенням. Кожен рядок таблиці містить інформацію про один окремий об'єкт системи, а кожен стовпчик – певні характеристики (атрибути) цих об'єктів. Рядки такої таблиці називаються – записами, а стовпчики – полями. Для кожного поля визначається тип і формат. Реляційна модель бази даних має такі властивості: Ø кожен елемент таблиці – один елемент даних; Ø усі дані в одному і тому ж стовпчику в таблиці мають один тип; Ø кожен стовпчик (поле) має унікальне ім'я; Ø однакові рядки в таблиці відсутні; Ø порядок слідування рядків в таблиці може бути довільним і може характеризуватися кількістю полів, кількістю записів, типом даних. Створення структури даних БД та введення даних Розглянемо приклад створення реляційної БД на основі матеріалу даних вашої групи. Проект бази даних БД «група» Анкета | | Телефонний довідник | | Успішність | | Дозвілля | Прізвище | | Прізвище | | Прізвище | | Прізвище | Ім’я | | Ім’я | | Алгебра | | Хобі | По-батькові | | Телефон | | Геометрія | | Улюблені фільми | Рік народження | | | | Фізика | | Улюблена музика | Домашня адреса | | | | Хімія | | | | | | | Укр. мова | | | Даний проект складатиметься з чотирьох взаємозв'язаних таблиць, з вказаними атрибутами. Об'єктами БД будуть студенти вашої групи. Реалізацію другого етапу, а саме створення структури бази даних, проведемо використовуючи прикладну програму офісного пакету Microsoft Access. База даних СУБД Access є реляційною базою даних, яка складається з взаємопов'язаних двовимірних таблиць. СУБД Access дає змогу: Ø проектувати табличні об'єкти бази даних; Ø встановлювати зв'язки між таблицями; Ø вводити, зберігати, переглядати, сортувати, модифікувати дані таблиці з використанням апарату алгебри логіки та індексування; Ø створювати й використовувати об'єкти БД. Об'єкти СУБД Access База даних – файл, який містить різні об'єкти збереження даних. Таблиця(tables) – організація збереження даних у вигляді двовимірного масиву. Є основним об'єктом БД. Решта – похідні від таблиці. Форми(forms) – об'єкти для зображення даних із таблиць на екрані в зручному для перегляду та обробки вигляді. Запити(queries) – об'єкти для вибору та фільтрації даних таблиці за визначеними критеріями (умовами). Звіти(reports) – формування документа даних із таблиці для друку. Макроси(macros) – опис дій у вигляді послідовності команд та їх автоматичного виконання. Модулі(modules) – програми на Visual Basic, які розробляє користувач для реалізації нестандартних процедур. Для створення нового файлу бази даних слід виконати такі дії: 1) Запустити програму MS Access; 2) Із запропонованих способів початку роботи з програмою (Новая база данных, Запуск мастера, Открыть базу данных) вибрати опцію Новая база данных; 3) У рік народження Создание базы данных ввести ім'я нового файла (Група -…..), у полі Папка вибрати папку, в якій зберігатиметься файл, натиснути кнопку Создать. Вся подальша робота з базою даних відбуватиметься у створеному файлі. Після створення нового файлу на екрані виводиться вікно бази даних (рис. 1). Це вікно має кілька закладок, що відповідають об'єктам бази даних (Таблицы, Запросы, Формы, Отчеты, Макросы, Модули). Отже, для роботи з певними об'єктами слід перейти на відповідну закладку.  Рис. 1 Об'єкти БД подаються піктограмами з підписами. Як і інші об'єкти Windows, об'єкти бази даних зручно опрацьовувати за допомогою контекстного меню. Крім цього, на кожній закладці є власне меню і спеціальні кнопки управління об’єктами: Открыть, або Просмотр (кнопку Запуск використовують залежно від особливостей об'єкта). Кнопка Создать призначена для створення нового об’єкта, кнопка – Открыть – для відкриття наявного об'єкта у тому вигляді, в якому його використовують при роботі з базою даних, а кнопка – Конструктор – для відкриття об'єкта в режимі Конструктора, що дає змогу створювати і змінювати структуру об'єкта. Перехід між режимами Конструктора і власне об'єкта можна здійснити в будь-який момент роботи з об'єктом, скориставшись кнопкою Вид на стандартній панелі інструментів. Access пропонує двох етапну схему створення таблиці: Ø створення структури таблиці; Ø заповнення таблиці даними. Алгоритм створення нової таблиці 1. На закладці Таблицы натиснути кнопку Создать, а у списку, де запропоновано різні способи створення таблиць, слід вибрати Конструктор і натиснути Ок; 2. У режимі Конструктора таблиць ввести імена полів, їхні типи і властивості, а також визначити ключові поля; 3. Зберегти таблицю у файлі бази даних, вказавши її ім'я; 4. Перейти в режим таблиці, натиснувши кнопку Вид на стандартній панелі інструментів; 5. Внести у таблицю необхідні дані; 6. Закрити режим таблиці. Вікно конструктора таблиць складається з двох частин (рис. 2). Верхня частина є таблицею, в якій обов'язково потрібно заповнити стовпці Имя поля і Тип данных відповідно до запланованої структури таблиці. При цьому імена полів вводять вручну, а тип даних для кожного введеного поля Access автоматично позначає як текстовий. Щоб встановити інший тип даних, слід перейти у клітинку з назвою типу. В клітинці з'явиться кнопка перегляду переліку, що містить всі доступні типи даних. Переглянувши перелік, слід вибрати потрібний тип. Типи даних СУБД Access Тип даних | Види даних | Максимальний розмір даних | Текстовий | Текст – набір символів | 255 символів | MEMO | Опис | До 8 кбайтів | Числовий (Числовой) | Числа, окрім грошових позначень | 8 байтів | Грошовий (Денежный) | Значення валют (використовується для уникання округлень при обчисленнях) | 8 байтів: до 15 символів у цілій частині і до 4 – у дробовій | Дата/час (Дата/время) | Дата і час | 8 байтів | Лічильник (Счетчик) | Автоматична вставка чисел арифметичної прогресії з кроком 1 у внесенні запису | 4 байти | Логічний (Логический) | Одне з двох значень Так/Hi, або True/False, або Вкл/Викл. | 1біт | Об'єкт OLE | Об'єкт, створений іншою програмою за протоколом OLE | До 1 Гбайта | Крім імені і типу, поле таблиці може мати низку властивостей, перелік яких можна проглянути або встановити в нижній частині режиму Конструктора таблиць. Для роботи з властивостями певного поля потрібно попередньо активізувати це поле у верхній частині Конструктора. Основними властивостями полів є: розмір поля, формат поля, значення за замовчуванням, умова на значення, повідомлення про помилку, обов'язкове поле, порожні рядки, індексоване поле. Всі прізвища в нашій БД будуть різними, тому єдине поле таблиці «Прізвище» – слід зробити ключовим. Для визначення ключового поля потрібно виділити відповідний йому рядок у верхній частині Конструктора таблиць і натиснути на панелі інструментів кнопку Ключевое поле. При цьому зліва назви поля з'являється зображення ключа. Ключове поле – одне або кілька полів, комбінація значень яких однозначно визначає кожен запис у таблиці. Наприклад, номер телефону, номер паспорту, код книжки в бібліотеці. За даними такого поля значно збільшується швидкість пошуку потрібних інформації БД. Після створення структури таблиці необхідно зберегти її на диску під потрібним ім'ям. Для внесення даних до таблиці потрібно перейти з режиму Конструктора до режиму таблиці. Це можна зробити такими способами: Ø за допомогою кнопки Вид на стандартній панелі інструментів; Ø вибрати потрібну таблицю закладки Таблицы, і натиснути кнопку Открыть. Ø виконавши подвійний клік на потрібній таблиці, назва якої міститься режимі закладки Таблицы (рис. 3).  Рис. 3 На екрані з'явиться режим таблиці виду, до якої заносять інформацію про визначені об'єкти. Дані, які вносять у записи таблиці, відразу записуються на диск, тому нема потреби у зберіганні проміжних результатів заповнення таблиці. Зв'язування таблиць БД Між таблицями, що утворюють базу даних, як правило, існують логічні зв'язки. Розрізняють такі зв'язки: Ø один до одного (дитина – мама, автор – книга, людина – паспорт); Ø один до багатьох (учитель – учні, вулиця – будинки, країна – міста); Ø багато до багатьох (колектив вчителів – учні школи). У СУБД Access міжтабличні зв'язки фіксуються, автоматично контролюються і візуально подаються завдяки спеціальному об'єкту бази даних, що має назву «схема даних». На відміну від інших об'єктів БД, схему даних не подано у вікні бази даних. Для виклику її потрібно виконати команду з меню Сервис - Схема данных, або скористатися однойменною кнопкою на стандартній панелі інструментів . Алгоритм створення зв'язків між таблицями 1.У основному вікні СУБД, звернутися до кнопки (Схема даннях). 2. При відкритті порожньої схеми даних на екран видається вікно Добавление таблицы, де слід вибрати назви таблиць, між якими будуть створені зв'язки, і натисненням кнопки Добавить розмістити графічні позначення цих таблиць у вікні схеми даних. Після розміщення всіх потрібних таблиць необхідно закрити вікно Добавление таблицы. 3. Для встановлення зв'язку між таблицями потрібно встановити курсор миші на ключове поле таблиці сторони відношення «один», після чого необхідно перетягти на однойменне ключове поле таблиці сторони відношення «одного». Після перетягування на екран виводиться вікно Изменение связей.У цьому вікні виводяться відомості про таблиці, що підлягають зв'язуванню, поля, за якими відбувається зв'язування, і тип зв'язку, який може бути встановлено у даному разі. Поля, які при цьому зв'язують повинні мати один і той самий тип. У вікні Связи можуть бути активізовані засоби контролю за цілісністю і несуперечливістю даних (перемикач Обеспечение целосности данных). 4.Встановивши необхідні параметри зв'язку, слід натиснути кнопку Создать. Вікно Связи закривається, а зв'язок між таблицями зображується у вікні схеми даних у вигляді лінії між позначеннями таблиць. 5. За потреби відредагувати зв'язок потрібно виділити лінію і в контекстному меню вибрати команду Изменить связь. Для вилучення зв'язку, виділяють потрібне зображення і натискають клавішу Delete. 6. Після створення схеми даних слід зберегти її на диску та закрити це вікно. Контроль цілісності даних дає змогу автоматично виконувати дві такі важливі операції над даними у зв'язаних таблицях, як каскадне вилучення зв'язних записів і каскадне оновлення зв'язних полів (перемикачі Каскадное удаление связных записей та Каскадное обновление связных полей) Розглянемо їх детальніше. Каскадне вилучення зв'язаних записів. При вилученні певного запису з головної таблиці автоматично вилучаються всі відповідні записи (ті, які мають спільний ключ) з підлеглої таблиці. Так, у базі даних забезпечується посилальна цілісність даних. Каскадне оновлення зв'язаних полів. При зміні значення у певному полі головної таблиці автоматично змінюються відповідні значення в полях підлеглої таблиці. Так забезпечується несуперечливість даних. Хід роботи 1. Вивчити теоретичні відомості. 2. Дати відповіді на контрольні запитання. 3. Виконати завдання. 4. Оформити звіт. Завдання Уявіть, що Вас взяли на посаду адміністратора до туристичної фірми Агенція Мандрівка. Керівництво агенції поставило перед Вами задачу – «створити автоматизоване робоче місце оператора у вигляді бази даних та організувати його роботу». Для вирішення поставленої задачі пропонуємо свою допомогу, яка полягає у виконанні завдань даної лабораторної роботи та наступних. Результатом вивчення теоретичного матеріалу та виконання завдань буде створена Вами база даних. Порядок виконання 1.Створіть у власній папці файл бази даних з назвою Агенція Мандрівка.mdb. У ній створіть таблиці «Путівки», «Дані про країни», «Замовлення», «Курс валюти» за зразком: Таблиця 1 Путівки Код путівки | Країна | Вид відпочинку | Кількість днів | Вартість путівки (грн) | Вартість проїзду (грн) | Вид проїзду | | Німеччина | екскурсії | | | | авіапереліт | | Великобританія | екскурсії | | | | авіа переліт | | Франція | екскурсії | | | | авіа переліт | | Італія | екскурсії | | | | авіа переліт | | Польща | лікування | | | | потягом | | Ізраїль | екскурсії | | | | авіапереліт | | Іспанія | екскурсії | | | | авіапереліт | | Угорщина | екскурсії | | | | потягом | | Йорданія | лікування | | | | авіапереліт | | Нідерланди | екскурсії | | | | авіапереліт | | Німеччина | лікування | | | | авіапереліт | Таблиця 2 Дані про країни Країна | Континент | Площа км кв | Кількість населення | Націона-льна валюта | Релігія | Державний прапор | Додаткові дані | Німеччина | Західна Європа | | | євро | католицизм |  | | Великобританія | Західна Європа | | | фунт | католицизм |  | | Франція | Західна Європа | | | євро | католицизм |  | | Італія | Західна Європа | | | євро | католицизм |  | | Польща | Центральна Європа | | | злотий | католицизм |  | | Ізраїль | Азія | | | шекель | іудаїзм, християнс-тво |  | | Іспанія | Західна Європа | | | євро | католицизм |  | | Угорщина | Центральна Європа | | | форинт | католицизм |  | | Йорданія | Близький Схід | | 5900000. | дінар | іслам |  | | Нідерланди | Західна Європа | | | євро | католицизм |  | | Таблиця 3 Замовлення Код замов-лення | Код путів-ки | Кіль- кість путівок | Оплачена сума (грн) | Замовник | Контактний телефон | Контактна адреса | | | | | Ткач А.А. | (096)142 51 16 | м. Біла Церква, вул. Павліченко 20, кв. 147 | | | | | Кривенда О.О. | (097)899 99 95 | м. Біла Церква, вул. Лісова 48 | | | | | Самейлюк Н.С. | (093)427 52 13 | м. Біла Церква, вул. Селекційна 112 | | | | | Ткаченко М.С. | (63)456 89 92 | м. Кагарлик, вул. Радянська 15 | | | | | Гнатюк В.І. | (067)788 76 31 | м. Київ, вул. Ак. Баумана 40, кв. 125 | | | | | Дмитрієва С.А. | (099)350 50 32 | м. Київ, вул. Єжеля 12А, кв. 41 | | | | | Маляренко Т.А. | (098)56 56 780 | Білоцерківський р-н, с. Іванівка, вул. К.Маркса 10 | | | | | Козій М.Б. | (067)140 40 18 | смт. Терезине, вул. Першотравнева 3 | | | | | Свікіс Т.О. | (067)982 14 32 | м. Біла Церква, вул. Північна 1, кв. 108 | | | | | Шишко Д.В. | (095)238 41 42 | м. Біла Церква, вул. Леваневського 37, кв. 56 | Таблиця 4 Курс валюти Грошова одиниця держави | Курс в гривнях | євро | 11,19 | фунт | 12,90 | злотий | 2,72 | шекель | 1,87 | форинт | 0,03 | дінар | 11,85 | 2.Визначте типи даних, які будуть міститися в заданих полях. 3.Зазначте ключовими поля: Ø в таблиці «Путівки» – ключове поле «Код путівки»; Ø в таблиці «Дані про країни» – ключове поле «Країна»; Ø в таблиці «Замовлення» – ключове поле «Код замовлення»; Ø в таблиці «Курс валюти» – ключове поле «Грошова одиниця держави». 4.Зберіть цікавий матеріал про країни світу, які б могли зацікавити замовника (фото краєвидів, готелів, історичні довідки, тощо...) і помістіть до поля «Додаткові дані». 5.Створити зв’язки між таблицями «Путівки», «Дані про країни», «Замовлення»,«Курс валюти».При цьому «Путівки»зробити головною таблицею, а таблиці «Дані про країни», «Замовлення»,«Курс валюти» –підпорядкованими. Забезпечити умову цілісності даних, а також одночасне відновлення й видалення даних у всіх підпорядкованих таблицях при їхній зміні в головній таблиці. 6.На схемі даних (рис. 4) розглянути отриманні зв’язки, визначити типи відношень.  Рис. 4 Контрольні запитання 1. Дайте визначення поняттям: Дані, База даних, СУБД ? 2. Назвіть моделі представлення БД. 3. Назвати основні поняття реляційної БД. 4. Які типи даних використовують для створення полів БД? 5. Яке поле називають ключовим? 6. Для чого потрібно створювати міжтабличні зв’язки? 7. Назвіть типи зв'язків між таблицями. 8. Перелічіть кроки алгоритму створення структури таблиці. 9. Як налагодити зв'язки між таблицями? Література 1. Ривкінд Й.А., Лисенко Т.І., Чернікова Л.А., Шакотько В.В.; за аг. Ред.. М.З. Згуровського. Інформатика: 11 кл.– К.: Генеза, 2011. – 304 с. 2. Гаєвський О.Ю. Інформатика 7-11: Навч. посіб.: –К.: «А.С.К.», 2008 3. Глинський Я.М. Інформатика: 10-11: Навч. посіб.: у 2 ч – Ч.2 Інформаційні технології – Львів, 2008 4. Руденко В.Д., Макарчук О.М., Патланжоглу М.О. Базовий курс інформатики: Навч. посіб.: у 2 ч – Ч.2 Інформаційні технології – К.: Видавнича група BHV, 2005– 320 с. |