Нормальні форми баз даних.
Привіт всім, і сьогодні ми поговоримо про те, що таке нормальні форми і як їх правильно використовувати.
нормальні форми - це правила, яких слід дотримуватися при правильної проектуванні бази даних.
Нормальних форм існує цілих 6 штук, проте зазвичай дотримуються всього лише 3 і цього більш ніж достатньо. Ось давайте їх і розберемо.
Перша нормальна форма
Щоб була дотримана перша форма, всі дані в полях повинні бути атомарний. Тобто одне поле - одне значення.
Відео: SQL. 16. Просто про нормальних формах
Уявімо, наприклад, що у нас є таблиця з учителями. Там є поле "уроки", куди записуються ті уроки, які веде даний учитель. У одного вчителя може бути відразу кілька уроків, вірно? І ви могли подумати, а чому б не записувати їх через кому?
математика,російська
Але так ні в якому разі робити не варто, бо ви порушите першу нормальну форму і вибирати дані буде не дуже зручно, правда?
Щоб це виправити, ви повинні створити 2 записи з одним і тим же вчителем.
1) валізці | математика |
2) валізці | російська |
Вітаю! Перша нормальна форма виконана. Давайте перейдемо до другої.
Друга нормальна форма
По-перше, ваша таблиця вже має бути в першій нормальній формі. По-друге, у вашій таблиці обов`язково повинен бути первинний ключ і всі записи повинні від нього залежати. Ті дані, що не залежать від даного ключа, повинні бути винесені в окрему таблицю-довідник.
Відео: Бази даних. Нормальні форми (nf) в реляційних базах даних
Наприклад, все той же приклад з учителями. Вчителі і уроки - дві різні таблиці, а не одна. Ви повинні створити поля id, урок, учитель в першій таблиці з уроками і створити другу таблицю з учителями, де будуть, наприклад, поля id, ім`я, прізвище.
Таблиця з уроками
id | Lesson | Teacher |
Таблиця з учителями
id | Name | Second name |
Тепер заповнимо таблицю з учителями
id | Name | Second name |
1 | Сергій | валізок |
2 | Ігор | карапузиків |
3 | Петро | перший |
Ось такі вчителі працюють у нас. Тепер перейдемо до таблиці з уроками
id | Lesson | Teacher |
1 | математика | 1 |
2 | російська | 1 |
3 | література | 3 |
Як ви, напевно, помітили, ми в поле teacher написали id з другої таблиці з уроками. Тепер, якщо нам потрібно буде змінити ім`я або прізвище у вчителя, нам потрібно буде змінити дані за все в одному місці.
Отже, щоб була дотримана друга форма, ви повинні всюди мати первинний ключ і виносити записи, що не залежать від первинного ключа в інші таблиці - довідники.
Вітаю! Ми розібралися з другої нормальною формою. Перейдемо до третьої, заключної.
Третя нормальна форма
Для початку ваша таблиця повинна бути в першій і другій нормальній формі.
Щоб була дотримана третя нормальна форма, у вас не повинно бути транзитивної залежності.
Наприклад, у нас є таблиця з такими полями
- Місто
- Адреса
- індекс
Тут у нас явно простежується транзитивній залежність. Навіщо нам поле Місто, якщо у нас є індекс? За індексом ми можемо зрозуміти, що за місто.
Відео: Вся правда про нормалізацію баз даних
Отже, ми розібралися з трьома найбільш важливими нормальними формами. Слідкуйте, щоб ваші таблиці завжди були в цих формах. Вдалого проектування баз даних! :)
- Як правильно писати програми
- Як вибрати неповторювані значення з бази даних.
- Як зробити дизайн для сайту
- Як зробити коментування на сайті
- Як зберігати дані в формі
- Як зробити реєстрацію та авторизацію користувачів на сайті
- Математичні функції в sql.
- Перевірка форми в jаvascript
- Красива форма з індикатором заповнення.
- Обробка форми в php
- Псевдокласи css3 для перевірки полів - valid і invalid.
- Робота з cookie в php
- Php: безпека. Зберігання даних в cookies.
- Html 5 атрибути для роботи з полями форми.
- Динамічна перевірка форми на jаvascript
- Розбиття і об`єднання рядків в php
- Атрибут html5 - read only.
- Localstorage. Локальна пам`ять на html5.
- Скрипт форми зворотного зв`язку
- Створення таблиць в html
- Створення форм в html