10ikt_ur19.pptx

10
За навчальною програмою 2018 року
Урок 19
Ключі й зовнішні
ключі. Зв’язки
між записами і
таблицями
9
Ключі й зовнішні ключі.
Зв’язки між записами і таблицями
Розділ 3
§ 16
Пригадай
структуру електронної таблиці;
типи даних клітинки електронної таблиці в середовищі табличного
процесора.
Ти дізнаєшся
зв’язки яких типів можуть існувати між сутностями;
як побудувати модель даних предметної області;
чим відрізняються таблиці баз даних і таблиці табличного
процесора;
як змінити структуру таблиці бази даних;
як налаштувати параметри зв’язків між таблицями.
10
Зв’язки яких типів можуть
існувати між сутностями?
Розділ 3
§ 16
Між двома сутностями, наприклад, А і Б, можливі
чотири типи зв’язків:
один-до-
одного
один-до-
багатьох
багато-до-
одного
багато-до-
багатьох
10
Зв’язки яких типів можуть
існувати між сутностями?
Розділ 3
§ 16
«один-до-одного» (1:1) означає, що в кожний момент
часу кожному екземпляру сутності А відповідає 1 або 0
екземплярів сутності Б;
Код Прізвище Ім'я
1 Іванов Кузьма
2 Петров Василь
…
Код Рік народження Адреса
1 1992 Шевченка, б.20, кв. 6
2 1993 Франка вул., б. 30, кв. 18
…
1 1
10
Зв’язки яких типів можуть
існувати між сутностями?
Розділ 3
§ 16
«один-до-багатьох»
(1:N) — одному
екземпляру сутності А
відповідає 0, 1 або
більше екземплярів
сутності Б;
Код Назва
1 Монітор
2 Вінчестер
…
Код Код товару Ціна
123 1 2 999
345 1 2 499
…
1 Б
товари прайс-лист
10
Зв’язки яких типів можуть
існувати між сутностями?
Розділ 3
§ 16
«багато-до-одного»
(N:1) — обернений
випадок до
попереднього;
Код Прізвище
1 Іванов
2 Петров
…
Код Назва
1 Історія
2 Географія
3 Біологія
…
Код
Код
вчителя
Код
предмету
Клас
1 1 1 9-А
2 1 2 8-Б
3 2 3 7-В
…
розклад
Б
Б
1 1
10
Зв’язки яких типів можуть
існувати між сутностями?
Розділ 3
§ 16
«багато-до-багатьох» (N:М) —
одному екземпляру сутності А
відповідає 0, 1 або більше
екземплярів сутності Б, і
навпаки, одному екземпляру
сутності Б відповідає 0, 1 або
більше екземплярів сутності А.
Код Прізвище
1 Іванов
2 Петров
…
Код Назва
1 Історія
2 Географія
3 Біологія
…
вчителі предмети
Б Б
10
Зв’язки яких типів можуть
існувати між сутностями?
Розділ 3
§ 16
Наведемо декілька прикладів.
Учень отримав у шкільній
бібліотеці підручник з
алгебри для 10 класу.
Зв’язок між читацьким
формуляром учня та книгою
обліку підручників — «один-
до-одного», оскільки один
учень користується
підручником з таким
інвентарним номером.
10
Зв’язки яких типів можуть
існувати між сутностями?
Розділ 3
§ 16
На уроках української літератури учні вивчають
творчість сучасного українського поета.
У бібліотеці твори
цього автора видають
на короткий проміжок
часу. Тому в багатьох
читацьких
формулярах є запис
про одну й ту саму
книжку (маємо зв’язок
«багато-до-одного»).
10
Зв’язки яких типів можуть
існувати між сутностями?
Розділ 3
§ 16
У декількох читацьких формулярах є записи щодо
користування бібліотечним фондом за різними
рубриками: підручники, художня література, періодичні
видання (зв’язок «багато-до-багатьох»).
В одному читацькому
формулярі записано дані про
всі підручники, якими
користується читач протягом
навчального року (зв’язок
«один-до-багатьох»).
10
Зв’язки яких типів можуть
існувати між сутностями?
Розділ 3
§ 16
Звичайний зв’язок у реляційних базах даних — це
«один-до-багатьох».
Якщо ви виявили зв’язок
між вашими таблицями «один-
до-одного», то швидше за все
потрібно переглянути
структуру. Можливо те, що ви
виділили як дві окремі
сутності, насправді є однією, і
їх потрібно об’єднати в одну
таблицю.
10
Зв’язки яких типів можуть
існувати між сутностями?
Розділ 3
§ 16
При зв’язку «багато-до-багатьох» необхідно також
переглянути структуру та пов’язати дві сутності таким
чином, щоб зв’язок між ними був «один-до-багатьох».
Якщо серед атрибутів не виявлено
потрібної пари для зв’язку, то в
цьому разі створюють так звану
зв’язуючу таблицю, яка має зв’язки з
кожною із сутностей як «один-до-
багатьох».
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
Процес побудови моделі
даних предметної області
належить до абстрактного
моделювання і, як
правило, поділяється на
кілька етапів, що
базуються на системному
підході. Ці етапи
розглянемо на прикладі.
Побудуємо модель бази
даних Бібліотека.
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
1. Визначення мети створення бази даних.
На першому етапі побудови
моделі необхідно визначити:
 мету створення бази даних
 основні її функції
 набір даних, які будуть
зберігатися
Тобто визначити основний зміст таблиць бази даних і
дані, що зберігатимуться в полях таблиць.
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
Під час роботи з базою даних Бібліотека користувач
може шукати відповіді на такі запитання:
Чи є в бібліотеці конкретна книжка?
Чи є книжка в наявності?
Книжки яких авторів даної тематики є в бібліотеці?
Які книжки даної тематики видано в заданий період?
Які видавництва публікують книжки даної тематики?
Яке видавництво видало дану книжку?
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
Таким чином, можна так сформулювати мету
створення цієї бази даних:
зберігати дані
про книжки,
авторів та
видавництва
для
подальшого
задоволення
запитів
користувачів.
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
2. Розробка таблиць, з яких складатиметься база
даних.
Одним з найскладніших
етапів у процесі
побудови моделі є
розробка таблиць,
оскільки очікувані
результати не завжди
дають повне уявлення
про структуру таблиць.
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
Наприклад, відносно бази даних Бібліотека можна
виділити три об’єкти (сутності), характеристики яких
можна зберігати в таблицях, а саме: книжка, автор,
видавництво. Причому, з огляду на перший етап, для
кожного об’єкта можна виділити такі атрибути:
назва книжки, автор, кількість сторінок,
видавництво, рік видання, ціна, наявність у
сховищі, тематика, ключові слова
КНИЖКА
прізвище, ім’я, по батькові, жанр творчості
АВТОР
назва, адреса, спеціалізація, сайт
ВИДАВНИЦТВО
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
Для опису кожного виділеного об’єкта доцільно
побудувати таблицю, до якої внести імена атрибутів
об’єктів і типи значень цих атрибутів, а також
обмеження на їх значення.
Під час проектування таблиць спочатку
краще розробити їх структуру на папері,
при цьому доцільно користуватися
такими основними правилами.
Дані в таблиці не повинні
дублюватися, також не має бути
повторень між таблицями.
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
Кожна таблиця має містити дані лише з однієї теми.
Дані з кожної теми опрацьовуються значно легше, якщо
вони містяться в незалежних одна від одної таблицях.
Наприклад, адреса видавництва й
відомості про книжки зберігаються в
різних таблицях — з тим, щоб при
видаленні відомостей про книжку дані
стосовно видавництва залишалися в
базі даних, а при закритті видавництва
відомості про книжки, що видані ним
раніше, не були також видалені.
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
3. Визначення полів таблиці.
Кожна таблиця
містить дані окремої
теми, а кожне поле в
таблиці містить
окреме значення.
Наприклад, у таблиці
з даними про авторів
можуть міститися
поля з прізвищем,
адресою та номером
телефону.
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
Під час розроблення полів для кожної таблиці
необхідно пам’ятати:
 кожне поле має відповідати темі таблиці;
 не рекомендується включати до таблиці дані, які є
результатом обчислення значень виразів;
 у таблиці слід розміщувати всі необхідні дані;
 дані потрібно ділити на найменші логічні одиниці
(наприклад, поля Ім’я і Прізвище, а не загальне
поле ПІБ, поля Місто, Вулиця, Будинок, Квартира, а
не загальне поле Адреса).
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
4. Визначення ключа таблиці.
Кожна таблиця має
містити поле або набір
полів, які задаватимуть
унікальне значення
кожному запису в
таблиці, за яким
можна точно
визначити потрібний
запис. Таке поле або
набір полів називають
основним ключем.
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
5. Визначення зв’язків між таблицями.
Після розподілу даних у таблицях і визначення
ключових полів необхідно вибрати схему для
зв’язування даних у різних таблицях. Для цього слід
визначити зв’язки між таблицями. Наприклад,
Автор — Книжка Видавництво — Книжка
зв’язок 1:N зв’язок 1:N
10
Як побудувати модель даних
предметної області?
Розділ 3
§ 16
6. Оновлення структури бази даних.
Після опису таблиць,
полів і зв’язків
необхідно ще раз
переглянути
структуру бази даних
і виявити можливі
недоліки. Крім того,
потрібно виключити з
таблиць усі можливі
повторення даних.
10
Чим відрізняються таблиці баз даних
і таблиці табличного процесора?
Розділ 3
§ 16
На відміну від таблиць табличного процесора, таблиці
баз даних мають чітко визначену структуру, яка
формується в режимі конструктора таблиць.
Структура
таблиці — це набір
поіменованих
полів, у яких
описують
властивості
об’єктів
10
Чим відрізняються таблиці баз даних
і таблиці табличного процесора?
Розділ 3
§ 16
У режимі конструктора не передбачено введення,
редагування та перегляд даних таблиці, його
використовують лише для створення та зміни структури
таблиці.
10
Чим відрізняються таблиці баз даних
і таблиці табличного процесора?
Розділ 3
§ 16
Створення структури таблиці як об’єкта бази даних
передбачає такі дії.
1. Визначення параметрів (атрибутів), що
характеризуватимуть властивості об’єкта і значення яких
будуть занесені до полів конкретної таблиці бази даних.
2. Надання унікального імені кожному полю таблиці, яке
будується за певними правилами.
3. Визначення формату подання даних у кожному полі,
тобто типу даних та необхідних обмежень.
4. Визначення ключового поля чи сукупності ключових
полів.
10
Чим відрізняються таблиці баз даних
і таблиці табличного процесора?
Розділ 3
§ 16
Існують ключі двох типів:
первинні вторинні (зовнішні)
Якщо для таблиці
визначені ключові поля, то
MS Access запобігає
дублюванню або введенню
порожніх значень у ці
поля.
10
Чим відрізняються таблиці баз даних
і таблиці табличного процесора?
Розділ 3
§ 16
Первинний ключ — це одне або кілька полів
(стовпців), комбінація значень яких однозначно
визначає кожний запис у таблиці.
Первинний ключ не допускає
значень Null і завжди повинен мати
унікальний індекс.
Первинний ключ
використовується для зв’язування
таблиці із зовнішніми ключами в
інших таблицях.
10
Чим відрізняються таблиці баз даних
і таблиці табличного процесора?
Розділ 3
§ 16
Зовнішній (вторинний)
ключ — це одне або
кілька полів (стовпців) у
таблиці, що містять
посилання на поле або
поля первинного ключа
в іншій таблиці.
Зовнішній ключ
визначає спосіб
об’єднання таблиць.
10
Чим відрізняються таблиці баз даних
і таблиці табличного процесора?
Розділ 3
§ 16
З двох логічно пов’язаних таблиць:
одну називають таблицею
первинного ключа, або
головною таблицею
а іншу — таблицею
вторинного (зовнішнього)
ключа, або
підпорядкованою
таблицею
СКБД дають змогу зіставити споріднені записи з обох
таблиць і спільно вивести їх у:
формі звіті запиті
10
Чим відрізняються таблиці баз даних
і таблиці табличного процесора?
Розділ 3
§ 16
Існує три типи первинних ключів:
Ключові поля
лічильника
(лічильник)
Простий ключ Складений ключ
Поле лічильника
(тип даних
«автозаповнення»).
Для кожного запису
цього поля таблиці
автоматично
заноситься унікальне
числове значення.
Якщо поле містить
унікальні значення, такі
як коди чи інвентарні
номери, то це поле
можна визначити як
первинний ключ.
Ключем можуть бути всі
поля, що містять дані,
якщо вони не містять
повторювані значення
або значення Null.
У випадках, коли
неможливо
гарантувати
унікальність значень
кожного поля, існує
можливість створити
ключ, що складається
з декількох полів.
10
Чим відрізняються таблиці баз даних
і таблиці табличного процесора?
Розділ 3
§ 16
Зауважте, що:
в полі первинного ключа
в полі вторинного або
зовнішнього ключа
мають бути тільки
унікальні значення в
кожному рядку таблиці,
тобто збіг не допускається
збіг значень у рядках
таблиці допускається
Якщо виникають труднощі з вибором потрібного типу
первинного ключа, то як ключ доцільно вибрати поле
лічильника.
10
Чим відрізняються таблиці баз даних
і таблиці табличного процесора?
Розділ 3
§ 16
Для створення первинного ключа слід
відкрити таблицю в режимі конструктора,
виділити поле, яке використовується як
первинний ключ, і натиснути кнопку Ключове
поле, що міститься в розділі Знаряддя вкладки
Конструктор.
10
Як змінити структуру
таблиці бази даних?
Розділ 3
§ 16
Залежно від потреб користувачів, можна змінювати
структуру таблиць бази даних шляхом:
зміни порядку розташування полів;
видалення (додавання) нового поля;
зміни назв полів;
зміни властивостей полів;
зміни типів даних;
додавання чи зміни ключового поля.
10
Як змінити структуру
таблиці бази даних?
Розділ 3
§ 16
Вікно конструктора таблиць
Імена полів
Список типів
даних
Опис
Властивості
поля
10
Як змінити структуру
таблиці бази даних?
Розділ 3
§ 16
Під час створення або редагування імен полів
потрібно дотримуватися таких правил:
 назви полів у межах однієї таблиці не повинні
повторюватися (тобто мають бути унікальними);
 імена полів не мають перевищувати 64 символи;
 бажано не використовувати як назви полів вбудовані
функції (наприклад, Name — ім’я);
 назва поля не має починатися з пропуску;
10
Як змінити структуру
таблиці бази даних?
Розділ 3
§ 16
Тип даних обирається зі списку типів,
що підтримуються системою керування
базами даних.
 текстовий,
 числовий,
 дата/час,
 автозаповнення.
Найбільш вживаними є типи:
10
Як змінити структуру
таблиці бази даних?
Розділ 3
§ 16
Необхідні обмеження на введення даних можна
задати (чи змінити), якщо перейти до вкладки
Властивості поля/Загальні:
задає довжину значення, яке буде
зберігатися в цьому полі;
розмір
поля
визначає, як буде відображатися збережене
в таблиці значення;
формат
поля
допомагає користувачеві вводити дані в
заданому форматі;
маска
введення
визначає, як буде підписуватися поле під
час перегляду даних.
підпис
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Для організації подальшого пошуку та відбору даних
з логічно пов’язаних таблиць бази даних спочатку
потрібно встановити зв’язки між створеними таблицями.
У більшості випадків зв’язують ключове поле однієї
таблиці (первинний ключ) з відповідним йому полем в
іншій таблиці (зовнішній ключ).
У зв’язаних полів не
обов’язково мають бути однакові
імена, але в них мають
зберігатися дані одного типу, і
вони повинні мати однакові
розміри для збереження вмісту.
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Розглянемо порядок створення зв'язку в таблицях
МАГАЗИНИ і КАДРИ.
Завантажимо БД atb і у вікні, що відкриється,
активуємо вкладку Знаряддя бази даних. Далі
натиснемо кнопку Зв'язки.
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Продовження…
1. Відкриється вікно Відображення таблиці.
2. У цьому вікні вибираємо таблиці, які необхідно
зв'язати (у цьому випадку обидві таблиці), і
натискаємо кнопку Додати. На екрані з'являться ці
таблиці з іменами їх полів.
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Продовження…
3. Установлюємо курсор на первинному ключі таблиці
МАГАЗИНИ, натискаємо кнопку миші, не
відпускаючи її, переміщуємо
курсор у поле зовнішнього
ключа й відпускаємо кнопку.
У результаті відкриється вікно
Редагування зв'язків.
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Продовження…
4. Умикаємо прапорець Забезпечення цілісності даних.
Після цього стануть
доступними прапорці
Каскадне оновлення
пов'язаних полів і Каскадне
видалення пов'язаних полів.
Умикаємо прапорець
Каскадне видалення
пов'язаних полів.
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Продовження…
4. Якщо прапорець Каскадне видалення пов'язаних
полів вимкнутий, то в таблиці можна додавати нові
записи, змінювати ключові поля й видаляти
пов'язані записи без попередження про порушення
цілісності.
Сутність каскадного оновлення пов'язаних полів
полягає в тому, що за будь-якої зміни первинного
ключа в головній таблиці автоматично оновиться
значення відповідного поля в усіх зв'язаних
таблицях.
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Продовження…
4. Сутність каскадного видалення пов'язаних полів
полягає в тому, що під час видалення будь-якого
запису з головної таблиці автоматично видаляються
зв'язані записи в пов'язаній таблиці.
Таким чином, каскадне
оновлення та каскадне
видалення прискорюють
роботу з БД і сприяють
підвищенню надійності її
функціонування.
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Продовження…
5. У вікні Редагування зв'язків слід натиснути кнопку
Створити, у результаті чого у вікні Зв'язки з'явиться
лінія зв'язку між певними полями таблиць.
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Для перегляду всіх зв'язків між таблицями бази
даних необхідно на відкритій вкладці Знаряддя бази
даних натиснути кнопку Зв'язки, активізувати вкладку
Конструктор і в розділі Зв'язок натиснути кнопку Усі
зв'язки.
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Якщо схема складна, можна приховати частину
таблиць і зв'язків, видаливши їх із вікна Зв'язки, для
чого необхідно виділити певну таблицю й натиснути
клавішу Del. У цьому разі зв'язки й таблиці видаляються
лише з вікна, фізично вони залишаються, тому їх можна
відновити в будь-який час.
10
Як налаштувати параметри
зв’язків між таблицями?
Розділ 3
§ 16
Для скасування зв'язку між таблицями необхідно
встановити курсор на лінії зв'язку, натиснути кнопку
миші, а потім — клавішу Del. Можна також відкрити
контекстне меню лінії зв'язку й виконати команду
Видалити.
10
Дайте відповіді на запитання
Розділ 3
§ 16
1. Як ви розумієте поняття моделі «сутність—зв’язок»?
2. За яких умов таблицю можна вважати аналогом
відношення?
3. З якою метою встановлюються зв’язки між
таблицями?
4. Яких правил побудови моделі даних
предметної області слід дотримуватись і чому?
5. Яке поле називають ключовим?
10
Домашнє завдання
Проаналізувати
§ 16, ст. 158-166
Розділ 3
§ 16
10
Працюємо за комп’ютером
Розділ 3
§ 16
Сторінка
164
10
Дякую за увагу!
За навчальною програмою 2018 року
Урок 19
1 de 55

Recomendados

11 клас 18 урок. Проектування бази даних. Введення і редагування даних у табл... por
11 клас 18 урок. Проектування бази даних. Введення і редагування даних у табл...11 клас 18 урок. Проектування бази даних. Введення і редагування даних у табл...
11 клас 18 урок. Проектування бази даних. Введення і редагування даних у табл...StAlKeRoV
3.7K vistas59 diapositivas
11 клас 17 урок por
11 клас 17 урок11 клас 17 урок
11 клас 17 урокDarina Koroleh
553 vistas23 diapositivas
Lesson23 relational databases, their objects. instructing with bc por
Lesson23 relational databases, their objects. instructing with bcLesson23 relational databases, their objects. instructing with bc
Lesson23 relational databases, their objects. instructing with bcNikolay Shaygorodskiy
2.3K vistas5 diapositivas
11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД. por
11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.
11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.StAlKeRoV
9.6K vistas23 diapositivas
електронний помічник por
електронний помічникелектронний помічник
електронний помічникSergiy Shydlovskyy
675 vistas27 diapositivas
11 клас 17 урок бд por
11 клас 17 урок бд11 клас 17 урок бд
11 клас 17 урок бдМарина Конколович
309 vistas19 diapositivas

Más contenido relacionado

Destacado

ChatGPT and the Future of Work - Clark Boyd por
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
22K vistas69 diapositivas
Getting into the tech field. what next por
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
5.3K vistas22 diapositivas
Google's Just Not That Into You: Understanding Core Updates & Search Intent por
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
6.1K vistas99 diapositivas
How to have difficult conversations por
How to have difficult conversations How to have difficult conversations
How to have difficult conversations Rajiv Jayarajah, MAppComm, ACC
4.6K vistas19 diapositivas
Introduction to Data Science por
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data ScienceChristy Abraham Joy
82.2K vistas51 diapositivas
Time Management & Productivity - Best Practices por
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
169.7K vistas42 diapositivas

Destacado(20)

ChatGPT and the Future of Work - Clark Boyd por Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
Clark Boyd22K vistas
Getting into the tech field. what next por Tessa Mero
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
Tessa Mero5.3K vistas
Google's Just Not That Into You: Understanding Core Updates & Search Intent por Lily Ray
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Lily Ray6.1K vistas
Time Management & Productivity - Best Practices por Vit Horky
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
Vit Horky169.7K vistas
The six step guide to practical project management por MindGenius
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
MindGenius36.6K vistas
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright... por RachelPearson36
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
RachelPearson3612.6K vistas
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present... por Applitools
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Applitools55.4K vistas
12 Ways to Increase Your Influence at Work por GetSmarter
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
GetSmarter401.6K vistas
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G... por DevGAMM Conference
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
DevGAMM Conference3.6K vistas
Barbie - Brand Strategy Presentation por Erica Santiago
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
Erica Santiago25.1K vistas
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well por Saba Software
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Saba Software25.2K vistas
Introduction to C Programming Language por Simplilearn
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
Simplilearn8.4K vistas
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr... por Palo Alto Software
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...
Palo Alto Software88.3K vistas
9 Tips for a Work-free Vacation por Weekdone.com
9 Tips for a Work-free Vacation9 Tips for a Work-free Vacation
9 Tips for a Work-free Vacation
Weekdone.com7.2K vistas
I Rock Therefore I Am. 20 Legendary Quotes from Prince por Empowered Presentations
I Rock Therefore I Am. 20 Legendary Quotes from PrinceI Rock Therefore I Am. 20 Legendary Quotes from Prince
I Rock Therefore I Am. 20 Legendary Quotes from Prince
Empowered Presentations142.8K vistas
How to Map Your Future por SlideShop.com
How to Map Your FutureHow to Map Your Future
How to Map Your Future
SlideShop.com275.1K vistas

10ikt_ur19.pptx

  • 1. 10 За навчальною програмою 2018 року Урок 19 Ключі й зовнішні ключі. Зв’язки між записами і таблицями
  • 2. 9 Ключі й зовнішні ключі. Зв’язки між записами і таблицями Розділ 3 § 16 Пригадай структуру електронної таблиці; типи даних клітинки електронної таблиці в середовищі табличного процесора. Ти дізнаєшся зв’язки яких типів можуть існувати між сутностями; як побудувати модель даних предметної області; чим відрізняються таблиці баз даних і таблиці табличного процесора; як змінити структуру таблиці бази даних; як налаштувати параметри зв’язків між таблицями.
  • 3. 10 Зв’язки яких типів можуть існувати між сутностями? Розділ 3 § 16 Між двома сутностями, наприклад, А і Б, можливі чотири типи зв’язків: один-до- одного один-до- багатьох багато-до- одного багато-до- багатьох
  • 4. 10 Зв’язки яких типів можуть існувати між сутностями? Розділ 3 § 16 «один-до-одного» (1:1) означає, що в кожний момент часу кожному екземпляру сутності А відповідає 1 або 0 екземплярів сутності Б; Код Прізвище Ім'я 1 Іванов Кузьма 2 Петров Василь … Код Рік народження Адреса 1 1992 Шевченка, б.20, кв. 6 2 1993 Франка вул., б. 30, кв. 18 … 1 1
  • 5. 10 Зв’язки яких типів можуть існувати між сутностями? Розділ 3 § 16 «один-до-багатьох» (1:N) — одному екземпляру сутності А відповідає 0, 1 або більше екземплярів сутності Б; Код Назва 1 Монітор 2 Вінчестер … Код Код товару Ціна 123 1 2 999 345 1 2 499 … 1 Б товари прайс-лист
  • 6. 10 Зв’язки яких типів можуть існувати між сутностями? Розділ 3 § 16 «багато-до-одного» (N:1) — обернений випадок до попереднього; Код Прізвище 1 Іванов 2 Петров … Код Назва 1 Історія 2 Географія 3 Біологія … Код Код вчителя Код предмету Клас 1 1 1 9-А 2 1 2 8-Б 3 2 3 7-В … розклад Б Б 1 1
  • 7. 10 Зв’язки яких типів можуть існувати між сутностями? Розділ 3 § 16 «багато-до-багатьох» (N:М) — одному екземпляру сутності А відповідає 0, 1 або більше екземплярів сутності Б, і навпаки, одному екземпляру сутності Б відповідає 0, 1 або більше екземплярів сутності А. Код Прізвище 1 Іванов 2 Петров … Код Назва 1 Історія 2 Географія 3 Біологія … вчителі предмети Б Б
  • 8. 10 Зв’язки яких типів можуть існувати між сутностями? Розділ 3 § 16 Наведемо декілька прикладів. Учень отримав у шкільній бібліотеці підручник з алгебри для 10 класу. Зв’язок між читацьким формуляром учня та книгою обліку підручників — «один- до-одного», оскільки один учень користується підручником з таким інвентарним номером.
  • 9. 10 Зв’язки яких типів можуть існувати між сутностями? Розділ 3 § 16 На уроках української літератури учні вивчають творчість сучасного українського поета. У бібліотеці твори цього автора видають на короткий проміжок часу. Тому в багатьох читацьких формулярах є запис про одну й ту саму книжку (маємо зв’язок «багато-до-одного»).
  • 10. 10 Зв’язки яких типів можуть існувати між сутностями? Розділ 3 § 16 У декількох читацьких формулярах є записи щодо користування бібліотечним фондом за різними рубриками: підручники, художня література, періодичні видання (зв’язок «багато-до-багатьох»). В одному читацькому формулярі записано дані про всі підручники, якими користується читач протягом навчального року (зв’язок «один-до-багатьох»).
  • 11. 10 Зв’язки яких типів можуть існувати між сутностями? Розділ 3 § 16 Звичайний зв’язок у реляційних базах даних — це «один-до-багатьох». Якщо ви виявили зв’язок між вашими таблицями «один- до-одного», то швидше за все потрібно переглянути структуру. Можливо те, що ви виділили як дві окремі сутності, насправді є однією, і їх потрібно об’єднати в одну таблицю.
  • 12. 10 Зв’язки яких типів можуть існувати між сутностями? Розділ 3 § 16 При зв’язку «багато-до-багатьох» необхідно також переглянути структуру та пов’язати дві сутності таким чином, щоб зв’язок між ними був «один-до-багатьох». Якщо серед атрибутів не виявлено потрібної пари для зв’язку, то в цьому разі створюють так звану зв’язуючу таблицю, яка має зв’язки з кожною із сутностей як «один-до- багатьох».
  • 13. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 Процес побудови моделі даних предметної області належить до абстрактного моделювання і, як правило, поділяється на кілька етапів, що базуються на системному підході. Ці етапи розглянемо на прикладі. Побудуємо модель бази даних Бібліотека.
  • 14. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 1. Визначення мети створення бази даних. На першому етапі побудови моделі необхідно визначити:  мету створення бази даних  основні її функції  набір даних, які будуть зберігатися Тобто визначити основний зміст таблиць бази даних і дані, що зберігатимуться в полях таблиць.
  • 15. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 Під час роботи з базою даних Бібліотека користувач може шукати відповіді на такі запитання: Чи є в бібліотеці конкретна книжка? Чи є книжка в наявності? Книжки яких авторів даної тематики є в бібліотеці? Які книжки даної тематики видано в заданий період? Які видавництва публікують книжки даної тематики? Яке видавництво видало дану книжку?
  • 16. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 Таким чином, можна так сформулювати мету створення цієї бази даних: зберігати дані про книжки, авторів та видавництва для подальшого задоволення запитів користувачів.
  • 17. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 2. Розробка таблиць, з яких складатиметься база даних. Одним з найскладніших етапів у процесі побудови моделі є розробка таблиць, оскільки очікувані результати не завжди дають повне уявлення про структуру таблиць.
  • 18. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 Наприклад, відносно бази даних Бібліотека можна виділити три об’єкти (сутності), характеристики яких можна зберігати в таблицях, а саме: книжка, автор, видавництво. Причому, з огляду на перший етап, для кожного об’єкта можна виділити такі атрибути: назва книжки, автор, кількість сторінок, видавництво, рік видання, ціна, наявність у сховищі, тематика, ключові слова КНИЖКА прізвище, ім’я, по батькові, жанр творчості АВТОР назва, адреса, спеціалізація, сайт ВИДАВНИЦТВО
  • 19. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 Для опису кожного виділеного об’єкта доцільно побудувати таблицю, до якої внести імена атрибутів об’єктів і типи значень цих атрибутів, а також обмеження на їх значення. Під час проектування таблиць спочатку краще розробити їх структуру на папері, при цьому доцільно користуватися такими основними правилами. Дані в таблиці не повинні дублюватися, також не має бути повторень між таблицями.
  • 20. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 Кожна таблиця має містити дані лише з однієї теми. Дані з кожної теми опрацьовуються значно легше, якщо вони містяться в незалежних одна від одної таблицях. Наприклад, адреса видавництва й відомості про книжки зберігаються в різних таблицях — з тим, щоб при видаленні відомостей про книжку дані стосовно видавництва залишалися в базі даних, а при закритті видавництва відомості про книжки, що видані ним раніше, не були також видалені.
  • 21. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 3. Визначення полів таблиці. Кожна таблиця містить дані окремої теми, а кожне поле в таблиці містить окреме значення. Наприклад, у таблиці з даними про авторів можуть міститися поля з прізвищем, адресою та номером телефону.
  • 22. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 Під час розроблення полів для кожної таблиці необхідно пам’ятати:  кожне поле має відповідати темі таблиці;  не рекомендується включати до таблиці дані, які є результатом обчислення значень виразів;  у таблиці слід розміщувати всі необхідні дані;  дані потрібно ділити на найменші логічні одиниці (наприклад, поля Ім’я і Прізвище, а не загальне поле ПІБ, поля Місто, Вулиця, Будинок, Квартира, а не загальне поле Адреса).
  • 23. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 4. Визначення ключа таблиці. Кожна таблиця має містити поле або набір полів, які задаватимуть унікальне значення кожному запису в таблиці, за яким можна точно визначити потрібний запис. Таке поле або набір полів називають основним ключем.
  • 24. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 5. Визначення зв’язків між таблицями. Після розподілу даних у таблицях і визначення ключових полів необхідно вибрати схему для зв’язування даних у різних таблицях. Для цього слід визначити зв’язки між таблицями. Наприклад, Автор — Книжка Видавництво — Книжка зв’язок 1:N зв’язок 1:N
  • 25. 10 Як побудувати модель даних предметної області? Розділ 3 § 16 6. Оновлення структури бази даних. Після опису таблиць, полів і зв’язків необхідно ще раз переглянути структуру бази даних і виявити можливі недоліки. Крім того, потрібно виключити з таблиць усі можливі повторення даних.
  • 26. 10 Чим відрізняються таблиці баз даних і таблиці табличного процесора? Розділ 3 § 16 На відміну від таблиць табличного процесора, таблиці баз даних мають чітко визначену структуру, яка формується в режимі конструктора таблиць. Структура таблиці — це набір поіменованих полів, у яких описують властивості об’єктів
  • 27. 10 Чим відрізняються таблиці баз даних і таблиці табличного процесора? Розділ 3 § 16 У режимі конструктора не передбачено введення, редагування та перегляд даних таблиці, його використовують лише для створення та зміни структури таблиці.
  • 28. 10 Чим відрізняються таблиці баз даних і таблиці табличного процесора? Розділ 3 § 16 Створення структури таблиці як об’єкта бази даних передбачає такі дії. 1. Визначення параметрів (атрибутів), що характеризуватимуть властивості об’єкта і значення яких будуть занесені до полів конкретної таблиці бази даних. 2. Надання унікального імені кожному полю таблиці, яке будується за певними правилами. 3. Визначення формату подання даних у кожному полі, тобто типу даних та необхідних обмежень. 4. Визначення ключового поля чи сукупності ключових полів.
  • 29. 10 Чим відрізняються таблиці баз даних і таблиці табличного процесора? Розділ 3 § 16 Існують ключі двох типів: первинні вторинні (зовнішні) Якщо для таблиці визначені ключові поля, то MS Access запобігає дублюванню або введенню порожніх значень у ці поля.
  • 30. 10 Чим відрізняються таблиці баз даних і таблиці табличного процесора? Розділ 3 § 16 Первинний ключ — це одне або кілька полів (стовпців), комбінація значень яких однозначно визначає кожний запис у таблиці. Первинний ключ не допускає значень Null і завжди повинен мати унікальний індекс. Первинний ключ використовується для зв’язування таблиці із зовнішніми ключами в інших таблицях.
  • 31. 10 Чим відрізняються таблиці баз даних і таблиці табличного процесора? Розділ 3 § 16 Зовнішній (вторинний) ключ — це одне або кілька полів (стовпців) у таблиці, що містять посилання на поле або поля первинного ключа в іншій таблиці. Зовнішній ключ визначає спосіб об’єднання таблиць.
  • 32. 10 Чим відрізняються таблиці баз даних і таблиці табличного процесора? Розділ 3 § 16 З двох логічно пов’язаних таблиць: одну називають таблицею первинного ключа, або головною таблицею а іншу — таблицею вторинного (зовнішнього) ключа, або підпорядкованою таблицею СКБД дають змогу зіставити споріднені записи з обох таблиць і спільно вивести їх у: формі звіті запиті
  • 33. 10 Чим відрізняються таблиці баз даних і таблиці табличного процесора? Розділ 3 § 16 Існує три типи первинних ключів: Ключові поля лічильника (лічильник) Простий ключ Складений ключ Поле лічильника (тип даних «автозаповнення»). Для кожного запису цього поля таблиці автоматично заноситься унікальне числове значення. Якщо поле містить унікальні значення, такі як коди чи інвентарні номери, то це поле можна визначити як первинний ключ. Ключем можуть бути всі поля, що містять дані, якщо вони не містять повторювані значення або значення Null. У випадках, коли неможливо гарантувати унікальність значень кожного поля, існує можливість створити ключ, що складається з декількох полів.
  • 34. 10 Чим відрізняються таблиці баз даних і таблиці табличного процесора? Розділ 3 § 16 Зауважте, що: в полі первинного ключа в полі вторинного або зовнішнього ключа мають бути тільки унікальні значення в кожному рядку таблиці, тобто збіг не допускається збіг значень у рядках таблиці допускається Якщо виникають труднощі з вибором потрібного типу первинного ключа, то як ключ доцільно вибрати поле лічильника.
  • 35. 10 Чим відрізняються таблиці баз даних і таблиці табличного процесора? Розділ 3 § 16 Для створення первинного ключа слід відкрити таблицю в режимі конструктора, виділити поле, яке використовується як первинний ключ, і натиснути кнопку Ключове поле, що міститься в розділі Знаряддя вкладки Конструктор.
  • 36. 10 Як змінити структуру таблиці бази даних? Розділ 3 § 16 Залежно від потреб користувачів, можна змінювати структуру таблиць бази даних шляхом: зміни порядку розташування полів; видалення (додавання) нового поля; зміни назв полів; зміни властивостей полів; зміни типів даних; додавання чи зміни ключового поля.
  • 37. 10 Як змінити структуру таблиці бази даних? Розділ 3 § 16 Вікно конструктора таблиць Імена полів Список типів даних Опис Властивості поля
  • 38. 10 Як змінити структуру таблиці бази даних? Розділ 3 § 16 Під час створення або редагування імен полів потрібно дотримуватися таких правил:  назви полів у межах однієї таблиці не повинні повторюватися (тобто мають бути унікальними);  імена полів не мають перевищувати 64 символи;  бажано не використовувати як назви полів вбудовані функції (наприклад, Name — ім’я);  назва поля не має починатися з пропуску;
  • 39. 10 Як змінити структуру таблиці бази даних? Розділ 3 § 16 Тип даних обирається зі списку типів, що підтримуються системою керування базами даних.  текстовий,  числовий,  дата/час,  автозаповнення. Найбільш вживаними є типи:
  • 40. 10 Як змінити структуру таблиці бази даних? Розділ 3 § 16 Необхідні обмеження на введення даних можна задати (чи змінити), якщо перейти до вкладки Властивості поля/Загальні: задає довжину значення, яке буде зберігатися в цьому полі; розмір поля визначає, як буде відображатися збережене в таблиці значення; формат поля допомагає користувачеві вводити дані в заданому форматі; маска введення визначає, як буде підписуватися поле під час перегляду даних. підпис
  • 41. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Для організації подальшого пошуку та відбору даних з логічно пов’язаних таблиць бази даних спочатку потрібно встановити зв’язки між створеними таблицями. У більшості випадків зв’язують ключове поле однієї таблиці (первинний ключ) з відповідним йому полем в іншій таблиці (зовнішній ключ). У зв’язаних полів не обов’язково мають бути однакові імена, але в них мають зберігатися дані одного типу, і вони повинні мати однакові розміри для збереження вмісту.
  • 42. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Розглянемо порядок створення зв'язку в таблицях МАГАЗИНИ і КАДРИ. Завантажимо БД atb і у вікні, що відкриється, активуємо вкладку Знаряддя бази даних. Далі натиснемо кнопку Зв'язки.
  • 43. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Продовження… 1. Відкриється вікно Відображення таблиці. 2. У цьому вікні вибираємо таблиці, які необхідно зв'язати (у цьому випадку обидві таблиці), і натискаємо кнопку Додати. На екрані з'являться ці таблиці з іменами їх полів.
  • 44. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Продовження… 3. Установлюємо курсор на первинному ключі таблиці МАГАЗИНИ, натискаємо кнопку миші, не відпускаючи її, переміщуємо курсор у поле зовнішнього ключа й відпускаємо кнопку. У результаті відкриється вікно Редагування зв'язків.
  • 45. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Продовження… 4. Умикаємо прапорець Забезпечення цілісності даних. Після цього стануть доступними прапорці Каскадне оновлення пов'язаних полів і Каскадне видалення пов'язаних полів. Умикаємо прапорець Каскадне видалення пов'язаних полів.
  • 46. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Продовження… 4. Якщо прапорець Каскадне видалення пов'язаних полів вимкнутий, то в таблиці можна додавати нові записи, змінювати ключові поля й видаляти пов'язані записи без попередження про порушення цілісності. Сутність каскадного оновлення пов'язаних полів полягає в тому, що за будь-якої зміни первинного ключа в головній таблиці автоматично оновиться значення відповідного поля в усіх зв'язаних таблицях.
  • 47. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Продовження… 4. Сутність каскадного видалення пов'язаних полів полягає в тому, що під час видалення будь-якого запису з головної таблиці автоматично видаляються зв'язані записи в пов'язаній таблиці. Таким чином, каскадне оновлення та каскадне видалення прискорюють роботу з БД і сприяють підвищенню надійності її функціонування.
  • 48. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Продовження… 5. У вікні Редагування зв'язків слід натиснути кнопку Створити, у результаті чого у вікні Зв'язки з'явиться лінія зв'язку між певними полями таблиць.
  • 49. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Для перегляду всіх зв'язків між таблицями бази даних необхідно на відкритій вкладці Знаряддя бази даних натиснути кнопку Зв'язки, активізувати вкладку Конструктор і в розділі Зв'язок натиснути кнопку Усі зв'язки.
  • 50. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Якщо схема складна, можна приховати частину таблиць і зв'язків, видаливши їх із вікна Зв'язки, для чого необхідно виділити певну таблицю й натиснути клавішу Del. У цьому разі зв'язки й таблиці видаляються лише з вікна, фізично вони залишаються, тому їх можна відновити в будь-який час.
  • 51. 10 Як налаштувати параметри зв’язків між таблицями? Розділ 3 § 16 Для скасування зв'язку між таблицями необхідно встановити курсор на лінії зв'язку, натиснути кнопку миші, а потім — клавішу Del. Можна також відкрити контекстне меню лінії зв'язку й виконати команду Видалити.
  • 52. 10 Дайте відповіді на запитання Розділ 3 § 16 1. Як ви розумієте поняття моделі «сутність—зв’язок»? 2. За яких умов таблицю можна вважати аналогом відношення? 3. З якою метою встановлюються зв’язки між таблицями? 4. Яких правил побудови моделі даних предметної області слід дотримуватись і чому? 5. Яке поле називають ключовим?
  • 55. 10 Дякую за увагу! За навчальною програмою 2018 року Урок 19