- •Технікум промислової автоматики
- •«Затверджую»
- •5.05010101 «Обслуговування програмних систем і комплексів»
- •Пояснювальна записка
- •Функції самостійної роботи:
- •Види самостійної роботи:
- •Теми, які виносяться на самостійне вивчення:
- •Тема 1 «Файлові системи» План
- •Література
- •Структури файлів
- •Іменування файлів
- •Захист файлів
- •Області застосування файлів
- •Тема 2 «Компоненти середовища системи керування базами даних (скбд)» План
- •Література
- •Апаратне забезпечення
- •Програмне забезпечення
- •Процедури
- •Користувачі
- •Тема 3 «Трьохрівнева архітектура системи керування базами даних» План
- •Література
- •Тема 4 «Головні переваги та недоліки ранніх скбд» План
- •Література
- •Тема 5 «Об'єктно-орієнтована модель даних» План
- •Література
- •Недоліки об'єктно-орієнтованих баз даних:
- •Тема 6 «Фундаментальні властивості відношень в реляційній моделі даних» План
- •Література
- •1. Відсутність кортежів-дублікатів
- •2. Відсутність впорядкованості кортежів
- •3. Відсутність впорядкованості атрибутів
- •4. Атомарність значень атрибутів
- •Тема 7 «Обмеження цілісності за станом» План
- •Література
- •Тема 8 «Дванадцать правил е. Ф. Кодду» План
- •Література
- •Правило інформації
- •Правило гарантійного доступу
- •Правило підтримки недійсних значень
- •Правило дінамічного каталогу, заснованого на реляційній моделі
- •Правило вичерпної підмови даних
- •Тема 9 «Функціональна модель даних. Модель семантичних об’єктів» План
- •Література
- •Магазин
- •Продавец
- •Тема 10 «Аномалії оновлення в базі даних» План
- •Література
- •Відношення «Співробітники»
- •Відношення «Відділення»
- •Відношення «Співробітники в відділеннях»
- •1. Аномалії вставки
- •2. Аномалії знищення
- •Аномалії модифікації
- •Тема 11 «Історія створення та виникнення мови запитів sql. Основні поняття sql» План
- •Література
- •Тема 12 «Типи даних в sql. Робота з оператором Where» План
- •Література
- •Типи даних в sql
- •Обрання рядків з використанням оператора where
- •Тема 13 «Сортування результатів – оператор Order by» План
- •Література
- •Відношення «Співробітники»
- •Відношення «Об’єкт нерухомості»
- •Тема 14 «Організація реляційних баз даних. Створення бази даних в скбд Access» План
- •Література
- •Організація реляційних баз даних
- •1. Визначення мети створення бази даних
- •Визначення таблиць, які повинна містити база даних
- •Визначення необхідних в таблиці полів
- •Завдання індівідуальних значень кожному полю
- •Визначення зв’язків між таблицями
- •6. Відновлення структури бази даних
- •7. Додавання даних та створення інших об’єктів бази даних.
- •Створення бази даних в скбд ms Access
- •Створення таблиць та зв’язків між таблицями в скбд Access
- •Визначення полів
- •Визначення первинного ключу
- •Визначення властивостей полів
- •Символи масок внесення
- •Встановлення зв’язків між таблицями
- •Тема 15 «Створення запитів в скбд ms Access» План
- •Література
- •Типи запитів, які підтримуються в скбд ms Access
- •Тема 16 «Внутрішні запити» План
- •Література
- •Тема 17 «Використання ключових слів Any та All» План
- •Література
- •Тема 18 «Створення форм в скбд Access» План
- •Література
- •Приклад створення простої автоформи:
- •Приклад створення форми за допомогою «Мастера форм»:
- •Створення форм за допомогою режиму конструктора
- •Тема 19 «Створення фільтрів в скбд ms Access» План
- •Література
- •1.Фільтр по выделенному фрагменту
- •2. Використання поля «Фильтр для»
- •3. «Звичайний фільтр»
- •4. «Розширенный фільтр»
- •Збереження фільтру як запиту
- •Використання запиту в якості фільтру
- •Тема 20 «Створення звітів в скбд Access» План
- •Література
- •Тема 21 «Створення макросів в скбд Access» План
- •Література
- •Макрокоманди, їх призначення та аргументи:
- •Збереження макросів
- •Виконання макроса
- •Редагування макросів
- •Копіювання макросів
- •Тема 22 «Системний каталог» План
- •Література
- •Зміст системного каталогу
- •Тема 23 «Властивості компонента tadoTable» План
- •Література
- •Тема 24 «Методи компонента tadoTable» План
- •Література
- •Тема 25 «Керування відображенням даних» План
- •Література
Тема 6 «Фундаментальні властивості відношень в реляційній моделі даних» План
Відсутність кортежів-дублікатів.
Відсутність впорядкованості кортежів.
Відсутність впорядкованості атрибутів.
Атомарність значень атрибутів.
Література
Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. – «Базы данных. Учебник для высших учебных заведений (6-е издание)». КОРОНА-Век. 2009 г.
Ребекка Райордан «Основы реляционных баз данных». 2007 г.
В реляційній моделі підтримуються такі фундаментальні властивості відношень:
відсутність кортежів-дублікатів;
відсутність впорядкованості кортежів;
відсутність впорядкованості атрибутів;
атомарність значень атрибутів.
Розглянемо детальніше кожне з цих властивостей.
1. Відсутність кортежів-дублікатів
Та властивість, що відношення не містять кортежів-дублікатів, виходить з визначення відношення як безлічі кортежів. У класичній теорії множин за визначенням кожна множина складається з різних елементів.
З цієї властивості витікає наявність у кожного відношення так званого первинного ключа - набору атрибутів, значення яких однозначно визначають кортеж відношення. Для кожного відношення принаймні повний набір його атрибутів має цю властивість. Проте при формальному визначенні первинного ключа потрібно забезпечення його «мінімальності», тобто в набір атрибутів первинного ключа не повинні входити такі атрибути, які можна відкинути без збитку для основної властивості, - однозначно визначати кортеж. Поняття первинного ключа є виключно важливим у зв'язку з поняттям цілісності баз даних.
2. Відсутність впорядкованості кортежів
Властивість відсутності впорядкованості кортежів відношення також є наслідком визначення відношення-екземпляра як множини кортежів. Відсутність вимоги до підтримки порядку на безлічі кортежів відношення дає додаткову гнучкість СКБД при зберіганні баз даних в зовнішній пам'яті і при виконанні запитів до бази даних. Це не суперечить тому, що при формулюванні запиту до БД, наприклад, на мові SQL можна зажадати сортування результуючої таблиці відповідно до значень деяких стовпців. Такий результат, взагалі кажучи, не відношення, а деякий впорядкований список кортежів.
3. Відсутність впорядкованості атрибутів
Атрибути відношень не впорядковані, оскільки за визначенням схема відношення є безліч пар {ім'я атрибуту, ім'я домена}. Для ссилки на значення атрибуту в кортежі відношення завжди використовується ім'я атрибуту. Ця властивість теоретично дозволяє, наприклад, модифікувати схеми існуючих стосунків не лише шляхом додавання нових атрибутів, але і шляхом видалення існуючих атрибутів. Проте у більшості існуючих систем така можливість не допускається, і хоча впорядкованість набору атрибутів відношення явно не потрібно, часто як неявний порядок атрибутів використовується їх порядок в лінійній формі визначення схеми відношення.
4. Атомарність значень атрибутів
Значення усіх атрибутів є атомарними. Це витікає з визначення домена як потенційної множини значень простого типу даних, тобто серед значень домена не може міститися множина значень (відношення). Прийнято говорити, що в реляційних базах даних допускаються тільки нормалізовані відношення або відношення, представлені в першій нормальній формі. Потенційним прикладом ненормалізованого відношення є наступне:
Номер відділення |
Відділення Номер співробітника ПІБ співробітника ЗП співробітника |
||
310 |
2934 |
Євдокімов М. К. |
3000 |
2935 |
Афоніна О. М. |
3200 |
|
2936 |
Петров А. А. |
4000 |
|
313 |
2937 |
Константинов П. Р. |
4500 |
315 |
2938 |
Мішина Г. Є. |
3900 |
Можна сказати, що тут ми маємо бінарне відношення, значеннями атрибуту ВІДДІЛЕННЯ якого є відношення. Помітимо, що початкове відношення СПІВРОБІТНИКИ є нормалізованим варіантом відношення ВІДДІЛЕННЯ:
Номер співробітника |
ПІБ співробітника |
ЗП співробітника |
Номер відділення |
2934 |
Євдокімов М. К. |
3000 |
310 |
2935 |
Афоніна О. М. |
3200 |
310 |
2936 |
Петров А. А. |
4000 |
310 |
2937 |
Константинов П. Р. |
4500 |
313 |
2938 |
Мішина Г. Є. |
3900 |
315 |
Нормалізовані відношення складають основу класичного реляційного підходу до організації баз даних. Вони мають деякі обмеження (не будь-яку інформацію зручно представляти у вигляді плоских таблиць), але істотно спрощують маніпулювання даними. Розглянемо, наприклад, два ідентичних оператори занесення кортежу:
Зарахувати співробітника Кузнєцова А. В. (номер співробітника - 3000, ЗП співробітника - 3700) у відділення номер 320 і
Зарахувати співробітника Кузнєцова А. В. (номер співробітника - 3000, ЗП співробітника - 3700) у відділення номер 310.
Якщо інформація про співробітників представлена у вигляді відношення СПІВРОБІТНИКИ, обидва оператори виконуватимуться однаково (вставити кортеж у відношення СПІВРОБІТНИКИ). Якщо ж працювати з ненормалізованим відношенням ВІДДІЛЕННЯ, то перший оператор виразиться в занесення кортежу, а другий - на додавання інформації про Кузнєцова в множинне значення атрибуту ВІДДІЛЕННЯ кортежу з первинним ключем 310.
Контрольні питання:
Які фундаментальні властивості відношень підтримуються в реляційній моделі?
Що означає властивість відношення «Відсутність кортежів-дублікатів»?
Що означає властивість відношення «Відсутність впорядкованості кортежів»?
Що означає властивість відношення «Відсутність впорядкованості атрибутів»?
Що означає властивість відношення «Атомарність значень атрибутів»?
