Урок 1 Інформатика 11(ІКТ)
Хоч би як добре працювала машина,
вона зможе розв'язувати всі задачі,
що ставляться перед нею,
але сама жодної задачі не придумає.
А. Ейнштейн
Поняття бази даних. Поняття, призначення й основні функції систем управління базами даних. Поняття моделі даних, основні моделі даних.
Мета.
Навчальна. Ввести поняття моделі даних, бази даних; ознайомити учнів із поняттям та призначенням систем управління базами даних; розглянути особливості реляційної, мережної, ієрархічної та об'єктно-орієнтованої моделей даних.
Розвиваюча. Розвивати логічне та алгоритмічне мислення.
Виховна. Виховувати культуру мовлення.
Тип уроку. Урок засвоєння нових знань.
Учні повинні знати:
Учні повинні уміти:
Матеріали для роботи з учнями:
План
Хід уроку
1. Організація початку уроку.
2. Правила ТБ при роботі в кабінеті ІКТ.
Під час роботи в комп'ютерній залі учні повинні дотримуватися таких правил:
1. Спокійно заходь в комп'ютерний зал, не штовхайся.
2. Сумку або портфель залиши у спеціально відведеному місці, із собою
візьми тільки зошити, ручку, підручник і диск (флешку).
3. Сідай за постійно закріплений за тобою комп'ютер.
4. Суворо забороняється:
5. Перед початком роботи:
6. Під час роботи:
7. При виникненні пожежі та інших аварійних випадків негайно припини роботу, вимкни комп'ютер, повідом вчителя і покинь приміщення.
8. Після завершення роботи:
Комплекс вправ для очей. Презентація “Вправи для очей”.
Вправи виконуються сидячи в зручній позі, хребет прямий, очі відкриті, погляд — прямо, відвернувшись від комп'ютера.
Варіант 1
1. Погляд спрямовувати вліво-вправо, вправо-прямо, вверх-прямо, додолу-прямо без затримки в кожному положенні. Повторити 5 разів і 5 разів у зворотному напрямі.
2. Закрити очі на рахунок «раз-два», відкрити очі і подивитися на кінчик носа на рахунок «три-чотири».
3. Кругові рухи очей: до 5 кругів вліво і вправо.
Варіант 2
1. Швидко кліпати очима протягом 15 с.
2. Заплющити очі. Не відкриваючи очей, начебто подивитися ліворуч на рахунок «раз-чотири», повернутися у вихідне положення. Так само подивитися праворуч на рахунок «п'ять-вісім» і повернутися у вихідне положення. Повторити 5 разів.
3. Спокійно посидіти із закритими очима, розслабившись протягом 5 с.
Комплекс вправ для зняття м’язового напруження при роботі з ПК.
Варіант 1
Вихідне положення — сидячи на стільці.
1. Зробити кілька глибоких вдихів і видихів. Потягнутися на стільці, зігнувши руки на потилиці, відхиляючи голову назад і випро-стовуючи плечі. Повторити 5 разів.
2. Зробити нахили і повороти голови. Повторити 5 разів.
3. Зробити легкий самомасаж обличчя і кисті руки протягом 3—5 с.
Варіант 2
Вихідне положення — сидячи на стільці.
1. Витягнути і розчепірити пальці так, щоб відчути напруження. У такому положенні затримати протягом 5 с. Розслабити, а потім зігнути пальці. Повторити вправу 5 разів.
2. Повільно і плавно опустити підборіддя, залишатися у такому положенні 2—3 с і розслабитися.
3. Сидячи на стільці піднести руки якомога вище, потім плавно опустити їх додолу, розслабити. Вправу повторити 5 разів.
4. Переплести пальці рук і покласти їх за голову. Звести лопатки, залишатися у такому положенні 5 с, а потім розслабитись. Повторити вправу 5 разів.
Варіант З
Вихідне положення — стоячи, ноги разом, руки вниз.
1. Прямі руки розвести вбоки долонями догори, зробити вдих.
2. Схрестити руки перед грудьми, міцно обхопити себе за плечі, повторити 5 разів.
3. Кругові рухи ліктями вперед протягом 5 с.
4. Те саме назад. Дихати рівномірно.
3. Мотивація навчальної діяльності.
Ви вже вмієте працювати з такими прикладними програмами, як системи обробки текстів, графічні редактори, табличні процесори тощо. Кожну з цих програм призначено для вирішення певного кола завдань, які важко (хоча інколи й можливо) реалізувати за допомогою інших засобів. Одне із завдань, що їх зручно виконувати в середовищі табличного процесора, — це оперування наборами однотипних об’єктів, поданими у вигляді таблиць, наприклад списком учнів класу або розкладом руху транспорту. Ви можете сортувати такі набори, фільтрувати їх, обчислювати підсумкові характеристики, застосовувати функції для автоматизованого вибирання даних тощо. Проте в табличному процесорі дані зручно обробляти лише в тих таблицях, які непов’язані одна з одною. Але так буває далеко не завжди: якщо, скажімо, в одній таблиці зберігається журнал успішності, а в іншій — журнал з результатами медичного обстеження учнів того ж класу, то ці таблиці є зв’язаними і виконати таке завдання, як обчислення середнього зросту відмінників, у табличному процесорі буде доволі проблематично.
Для зберігання і обробки кількох взаємопов’язаних наборів однотипних об’єктів використовують інший інструмент — системи керування базами даних, які є основним предметом дослідження в нашому курсі.
Кваліфіковані користувачі пакету Microsoft Office часто вважають системи керування базами даних черговою офісною програмою, а самі бази даних ставлять у ряду інших документів, таких як презентації чи електронні таблиці. Слід зазначити, що таке ставлення сильно принижує справжню роль інформаційної технології, якій присвячено даний посібник. Бази даних (БД) посідають особливе місце поміж інших галузей інформатики з багатьох причин.
По-перше, сфера їх застосування є найширшою. Практично кожна більш-менш серйозна програма зберігає свої дані в базі. БД використовують представники ледь не кожної професії (часто, однак, не підозрюючи, що вони працюють саме з базами даних). По-друге, бази даних у багатьох інформаційних системах виявляються ключовою ланкою, без котрої система просто «розсиплеться». По-третє, на відміну від усіх інших інформаційних технологій, реляційні бази даних мають під собою міцний і несуперечливий теоретичний фундамент. Організація баз даних — це наука у класичному розумінні цього слова.
4. Актуалізація опорних знань.
5. Вивчення нового матеріалу.
Поняття бази даних
Термін «база даних» почали використовувати в 60-х роках XX століття. Існують десятки різних означень цього поняття. Ми будемо дотримуватися такого означення.
База даних (БД) — це структурована сукупність даних, які відображують стан об’єктів певної предметної області та зв’язки між ними.
Пояснимо ключові поняття, вжиті в цьому означенні.
Предметною областю (ПО) називають сферу застосування конкретної бази даних. Це може бути, наприклад, медицина, освіта або залізничний транспорт. База даних містить відомості лише про ту частину ПО, яка важлива для користувачів бази даних. Так, якщо предметною областю є автомобільні дороги країни і база даних для цієї ПО розробляється для потреб пасажирів, то в ній міститимуться дані про те, яким транспортом можна проїхати з одного населеного пункту в інший, скільки на це знадобиться часу й коштів. Якщо ж база даних орієнтована на водіїв, то в ній має зберігатися інформація про заправні станції, відстані між населеними пунктами, розташування станцій технічного обслуговування, про небезпечні ділянки доріг тощо.
Об'єктами предметної області можуть бути підприємства, школи, учні, учителі, книжки та ін. Нагадаємо, що об’єкт має інмшнй набір параметрів, а кожен параметр має значення. Так, пари метрами об’єкта «людина» можуть бути прізвище, ім’я, по інгц.ісопі, рік народження, а їх значеннями — Войцеховський, Миколи, Олексійович, 1956. Між деякими об’єктами існують ш'л.пт. іішіриклад вислів «людина має собаку» відображає зміст зв’язку між об’єктами «людина» і «собака», а «машина їде по дорозі» — між об’єктами «машина» і «дорога».
Отже, базу даних можна розглядати як електронний аналог картотеки, де на кожній картці записані відомості про певний об’єкт, а також містяться посилання на інші картки, що представляють зв’язані об’єкти.
Схему, або структуру, бази даних слід відрізняти від її наповнення. Схема визначає, які параметри повинні мати об’єкти, що зберігаються в базі, а наповнення — це значення параметрів конкретних об’єктів, які записані в БД на поточний момент. Наприклад, схема БД може бути описана так: зберігаються відомості про ім’я, прізвище, по батькові та рік народження вчителів, а також про назви предметів, які вони викладають. Наповнення цієї БД може бути таким: учитель Пилипчук Олександр Павлович 1964 р. н. читає математику та інформатику, учитель Шестопалов Євген Анатолійович 1937 р. н. читає хімію та біологію.
Системи керування базами даних
Бази даних — це не різновид програмного забезпечення, а лише документи, з якими оперують спеціальні прикладні програми, що їх називають системами керування базами даних (так само, як з електронними таблицями оперують табличні процесори, а з зображеннями — графічні редактори).
Система керування базами даних (СКБД) — це програма, що забезпечує можливість створення БД та виконання різноманітних операцій з даними, які в ній зберігаються.
Переваги використання СКБД
З СКБД зазвичай взаємодіють не лише люди, а й інші прикладні програми. Взагалі, СКБД відіграє роль своєрідної оболонки навколо баз даних, яка встановлює правила роботи з ними будь-яких зовнішніх користувачів, або клієнтів (рис. 1.1). Ці правила однакові як для людей, так і для програм.
Такий підхід означає, що дані в БД більш захищені, ніж у документах інших типів, до яких прикладні програми можуть звертатися безпосередньо. Ви можете малювати що завгодно на растровому зображенні, вводити будь-який текст у текстовий документ або довільні дані в електронну таблицю, але з базою даних таке «не пройде»: введення даних, що не відповідають схемі бази або деяким іншим умовам, буде заблоковано СКБД. Ця властивість даних, що зберігаються в базах, називається цілісністю.
Під цілісністю даних у базі розуміють їх відповідність схемі БД, а також іншим правилам і умовам, що гарантують несуперечливість даних та їх узгодженість з предметною областю.
Підтримка цілісності в БД важлива з кількох причин, і насамперед тому, що доступ до баз мають програми. Скажімо, якщо в тексті буде зазначено, що певна людина живе на вулиці Київській, а на наступній сторінці — що на вул. Львівській (очевидна порушення цілісності!), то ви якось дасте собі раду з цим фактом, можливо, зрозумієте з контексту, яка інформація є достовірною, а от програма — «істота» нерозумна, і така помилки її даних може призвести до невиправного збою в її роботі. Не слід забувати і про підвищену важливість деяких даних, що зберігаються в базах, наприклад, даних про суму коштів на картковому рахунку. Очевидно, що некоректність таких даних неприпустима у жодному разі.
Цілісність забезпечується завдяки грамотному проектуванню схеми БД (за це відповідає розробник бази даних), а також завдяки тому, що СКБД забезпечує дотримання обмежень цілісності — спеціальних умов, яким мають відповідати коректні дані. Приклади обмежень цілісності: «людина має одне прізвище», «сума на кредитному рахунку не повинна перевищувати 100 000 грн». Створення обмежень цілісності — справа розробника БД.
Важливою перевагою використання СКБД є забезпечення незалежності даних від програм. Якщо прикладна програма реалізує алгоритм розв’язання певної задачі, а дані зберігаються в базі, то зміни в структурі даних не впливатимуть на прикладну програму, тобто не призведуть до необхідності змінити її логіку. З іншого боку, зміна логіки прикладної програми не призведе до зміни структури даних — СКБД знов-таки відіграє роль своєрідного «амортизатора».
Варто також зазначити, що СКБД забезпечують централізоване зберігання інформації, підвищуючи в такий спосіб її точність та достовірність. Так, у разі використання БД не може виникнути неузгодженості між інформацією про службове становище працівника, що виводиться програмою, призначеною для потреб відділу кадрів, і програмою, яка використовується у бухгалтерії, оскільки відповідні дані зберігаються в одному місці — спільній базі даних. Забезпечення спільного доступу до бази кількох клієнтів — ще одна перевага СКБД.
Отже, підтримка цілісності даних, незалежність даних від програм, централізоване зберігання інформації та забезпечення спільного доступу до даних кількох клієнтів — основні переваги використання СКБД порівняно з прямим доступом до даних прикладних програм. Можна назвати й низку інших важливих переваг, проте їх розгляд виходить за межі завдань базового курсу інформатики.
Для допитливих.
Бази даних і СКБД — не найдосконаліші засоби зберігання даних. Наприклад, інформацію, що зберігається в пам’яті людини, записати адекватно в БД практично неможливо, оскільки більшість відомостей, які ми пам’ятаємо, є нечіткими, неповними, суперечливими і т. п. Крім того, СКБД не дають змоги робити зі збережених у базі фактів логічні висновки, генерувати нові відомості, приймати рішення тощо. Для вирішення цього комплексу завдань використовуються бази знань та експертні системи. Про них ви можете дізнатися зокрема зі статей «База знань» та «Експертні системи» в українській Вікіпедії.
Функції СКБД
З самого означення СКБД випливає, що можна виділити дві основні категорії функцій СКБД: функції визначення даних — ті, що дозволяють визначити структуру даних у базі, та функції маніпулювання даними, які стосуються операцій із самими даними (рис. 1.2). Крім того, СКБД дає змогу тривалий час зберігати дані у цілісному вигляді, захищаючи їх від зловмисних та ненавмисних спотворень, тобто виконувати функцію збереження даних, а також ряд інших, менш важливих, функцій, які на рис. 1.2 не вказані.
Зауважте, що на позначення операцій з даними вживають достатньо нестандартні терміни: стосовно СКБД ми кажемо не «введення даних», а «додавання», не «редагування», а «оновлення», не «виведення», а «пошук і вибирання». Це не випадково, адже, наприклад, редагувати дані вміють лише люди, а коли до БД звертається програма, вона може тільки видалити елемент даних цілком та записати на його місце новий, тобто оновити дані, а не відредагувати. Так само, тільки люди здатні вводити дані, а програми їх додають. Нарешті, ми говоримо про пошук та вибирання даних у СКБД, а не про їх виведення, оскільки СКБД зовсім не обов’язково виводить дані у тому вигляді, в якому вони були введені в базу. Скажімо, у базу було введено дані про учнів та учителів, а клієнт хоче отримати прізвища вчителів, які вчать учня Іванова. Щоб виконати цей запит клієнта, СКБД має спочатку знайти вчителів, які викладають у класі цього учня, а потім вибрати їхні прізвища.
Зазначимо також, що розглянуту вище функцію забезпечення цілісності слід відрізняти від захисту даних, оскільки в останньому випадку йдеться про захист даних від несанкціонованого доступу. Це означає, що СКБД може надавати доступ до окремих елементів даних лише певним користувачам.
Ролі користувачів, що працюють з БД
Оскільки схема БД відрізняється від її наповнення, варто розрізняти тих, хто розробляє цю схему, і тих, хто оперує даними в базі. Перших називають розробниками БД, других — користувачами. Найчастіше користувач взаємодіє не з СКБД безпосередньо, а з прикладною програмою (див. рис. 1.1). Якщо ж людина вводить дані в базу прямо в середовищі СКБД, її називають оператором бази даних. Інколи вирізняють ще одну роль — адміністратора даних. В обов’язки останнього не входить розробка схеми БД, проте він визначає деякі обмеження цілісності, встановлює права доступу до тих чи інших даних певних користувачів тощо. Опрацьовуючи матеріал наступних уроків, ви виконуватимете ролі як розробника СКБД, так і оператора бази даних.
Моделі даних
Як уже зазначалося, структуру об’єктів та зв’язків між ними, відомості про які зберігаються в БД, визначає схема бази даних. А от правила побудови самої схеми визначаються моделлю даних. Крім того, модель даних регламентує, які операції ми можемо виконувати над даними.
Модель даних — це система правил, згідно з якими створюють структури даних, здійснюють доступ до даних та змінюють їх.
У більшості сучасних СКБД підтримується реляційна модель даних, попередниками якої були ієрархічна та мережева моделі.
Реляційна модель даних, в основу якої покладено математичне поняття відношення (англійською — relation), вперше була описана у 1970 році англійським кібернетиком Е. Ф. Коддом. У формі відношень у реляційній моделі подаються набори однотипних об’єктів. Відношення зручно зображувати у вигляді таблиці, тому фактично реляційна база даних — це сукупність таблиць, кожна з яких містить набір однотипних об’єктів.
Для допитливих.
Дуже часто термін «реляційний» помилково інтерпретують як «оснований на зв’язках» і основною особливістю реляційної моделі вважають наявність зв’язків між елементами даних. Насправді «зв’язок» англійською мовою буде «relationship», а термін «relation», точним перекладом якого є «відношення», в теорії баз даних майже еквівалентний терміну «таблиця». Отже, «реляційний» фактично означає «табличний».
Протягом останніх 15-20 років стали досліджуватися постреляційні моделі, найбільш перспективною з яких вважається об’єктно-орієнтована модель даних. Утім вона значною мірою відтворює ідеологію ієрархічної моделі, її розвиток відбуваєть ся повільно, тож на ринку СКБД, скоріш за все, ще тривалий час домінуватимуть реляційні системи.
Уважно переглянувши означення моделі даних, ми побачимо, що цим терміном охоплюються два поняття: правила визначення структури даних та правила маніпулювання даними. В усіх відомих сьогодні моделях правила маніпулювання даними реалізовано у вигляді спеціальних мов, на яких клієнти мають описувати запити до СКБД. Йдеться про так звані мови маніпулювання даними, які ще неформально називають мовами запитів. Часто до складу моделі даних включають ще й іншу мову, яка дозволяє описувати схеми баз даних і називається мовою визначення даних.
У реляційній моделі найбільш популярною мовою є SQL (від англ. Structured Query Language — мова структурованих запитів), яка поєднує в собі засоби мови визначення даних і мови маніпулювання даними. Можливість описувати запити до баз даних цією мовою надають усі відомі на сьогодні реляційні СКБД. Мова SQL не є мовою програмування, вона декларативна, тобто дозволяє користувачу описати, що він хоче отримати, не описуючи, як саме комп’ютер має обчислити потрібний результат. Тому писати запити мовою SQL значно легше, ніж програми будь-якою мовою програмування, але і це не завжди потрібно робити, адже деякі СКБД надають візуальні засоби конструювання запитів і серед них — СКБД MS Access, з якою ви працюватимете, опановуючи наступні розділи.
Для допитливих.
Мова SQL, хоча і є найпопулярнішою, не зовсім точно відповідає постулатам реляційної моделі даних, за що була піддана різкій критиці самим автором моделі Е. Коддом. Ще до появи SQL він запропонував дві інші мови маніпулювання даними — реляційну алгебру та реляційне числення, засоби яких включено до складу SQL, але з деякими неточностями.
6. Висновки
7. ЗАКРІПЛЕННЯ ЗНАНЬ
Опитування
Для пошуку відповідей учні можуть скористатися конспектом ібо матеріалом підручника.
Питання для роздумів
8. Застосування отриманих знань
3. Припустимо, що є відомості про багатоповерхові будинки, а саме про адреси, за якими вони розташовані, кількість та номери квартир на кожному поверсі, кількість кімнат у квартирах, а також про мешканців цих квартир (прізвище, ім’я, по батькові, дата народження). Виділіть у цій предметній області кілька наборів однотипних об’єктів та вкажіть параметри об’єктів у кожному наборі.
9. ПІДБИТТЯ ПІДСУМКІВ УРОКУ
Учитель перевіряє виконання в зошитах практичного завдання, наявність опорного конспекту, відповідає на запитання, які виникли в учнів під час вивчення нової теми.
10. ДОМАШНЄ ЗАВДАННЯ
1. Які ще функції має СКБД, крім тих, що зазначені на рис. 1.2? Знайдіть потрібну інформацію в Інтернеті.
2. Необхідно створити базу даних бібліотеки, у якій повинні зберігатися такі відомості про книжки: автор (прізвище, ім’я, по батькові кожного з авторів); назва; тип видання; місце видання; назва видавництва; рік видання; кількість сторінок; кількість томів; номер тома; бібліотечний шифр. Запропонуйте модель даних для цієї бази даних.
3. Схема БД має такий вигляд, як показано нижче. Для якої предметної області може бути побудована така база даних та як можуть називатися таблиці в ній? Між якими об’єктами в цій базі можуть існувати зв’язки та яким є зміст цих зв’язків? Заповніть кожну таблицю даними про два-три об’єкти.
Вид | Прізвисько | Дата народження | Стать | Вага |
№ | Площа | Тип |
Дата | Час відкриття | Час закриття | Кількість відвідувачів |