Нормальні форми баз даних

Нормальні форми баз даних

Привіт всім, і сьогодні ми поговоримо про те, що таке нормальні форми і як їх правильно використовувати.

Нормальні форми - це правила, яких слід дотримуватися при правильній проектуванні бази даних.

Нормальних форм існує цілих 6 штук, проте зазвичай дотримуються всього лише 3 і цього більш ніж достатньо. Ось давайте їх і розберемо.

Перша нормальна форма

Щоб була дотримана перша форма. всі дані в полях повинні бути атомарний. Тобто одне поле - одне значення.

Уявімо, наприклад, що у нас є таблиця з учителями. Там є поле "уроки", куди записуються ті уроки, які веде даний учитель. У одного вчителя може бути відразу кілька уроків, вірно? І ви могли подумати, а чому б не записувати їх через кому?

Але так ні в якому разі робити не варто, бо ви порушите першу нормальну форму і вибирати дані буде не дуже зручно, правда?

Щоб це виправити, ви повинні створити 2 записи з одним і тим же вчителем.

Вітаю! Перша нормальна форма виконана. Давайте перейдемо до другої.

Друга нормальна форма

По-перше, ваша таблиця вже має бути в першій нормальній формі. По-друге, у вашій таблиці обов'язково повинен бути первинний ключ і все записи повинні від нього залежати. Ті дані, що не залежать від даного ключа, повинні бути винесені в окрему таблицю-довідник.

Наприклад, все той же приклад з учителями. Вчителі і уроки - дві різні таблиці, а не одна. Ви повинні створити поля id. урок. учитель в першій таблиці з уроками і створити другу таблицю з учителями, де будуть, наприклад, поля id. ім'я. прізвище.

Таблиця з уроками

Таблиця з учителями

Тепер заповнимо таблицю з учителями

Ось такі вчителі працюють у нас. Тепер перейдемо до таблиці з уроками

Як ви, напевно, помітили, ми в поле teacher написали id з другої таблиці з уроками. Тепер, якщо нам потрібно буде змінити ім'я або прізвище у вчителя, нам потрібно буде змінити дані за все в одному місці.

Отже, щоб була дотримана друга форма, ви повинні всюди мати первинний ключ і виносити записи, що не залежать від первинного ключа в інші таблиці - довідники.

Вітаю! Ми розібралися з другої нормальною формою. Перейдемо до третьої, заключної.

Третя нормальна форма

Для початку ваша таблиця повинна бути в першій і другій нормальній формі.

Щоб була дотримана третя нормальна форма. у вас не повинно бути транзитивної залежності.

Наприклад, у нас є таблиця з такими полями

Тут у нас явно простежується транзитивній залежність. Навіщо нам поле місто. якщо у нас є індекс. За індексом ми можемо зрозуміти, що за місто.

Отже, ми розібралися з трьома найбільш важливими нормальними формами. Слідкуйте, щоб ваші таблиці завжди були в цих формах. Вдалого проектування баз даних. )

Запропонуйте цю статтю друзям:

Якщо Вам сподобався сайт, то розмістіть посилання на нього (у себе на сайті, на форумі, в контакті):

Вона виглядає ось так:

  • BB-код посилання для форумів (наприклад, можете поставити її в підписі):