Шумо дар бораи шаклҳои оддӣ дар базаҳои додаҳо чӣ медонед?
sobes.tech AI
Ҷавоб аз AI
Нормальныя формы (НФ) — гэта набор правілаў і рэкамендацый для праектавання структуры реляцыйнай базы дадзеных, накіраваных на мінімізацыю лішніх дадзеных і прадухіленне анамалій пры ўстаўцы, абнаўленні і выдаленні.
Асноўныя нормальныя формы:
-
Першая нормальная форма (1НФ):
- Кожны атрыбут (слупок) павінен утрымліваць атомарныя (нераздзельныя) значэнні.
- Адсутнасць паўтаральных груп атрыбутаў.
- Кожны радок павінен быць унікальным (наяўнасць першаснага ключа).
-
Другая нормальная форма (2НФ):
- Знаходзіцца ў 1НФ.
- Кожны неключавы атрыбут павінен цалкам залежаць ад усяго першаснага ключа (калі першасны ключ складзены).
-
Трэцяя нормальная форма (3НФ):
- Знаходзіцца ў 2НФ.
- Адсутнасць транзітыўных залежнасцей неключавых атрыбутаў ад першаснага ключа (неключавы атрыбут не павінен залежаць ад іншага неключавага атрыбута).
-
Форма Бойса-Кода (ФБК/BCNF):
- Больш строгая версія 3НФ.
- Кожная нетрывіяльная залежнасць $X \to Y$ павінна мець $X$ як суперключ.
-
Чацвёртая нормальная форма (4НФ):
- Знаходзіцца ў ФБК.
- Адсутнасць шматзначных залежнасцей.
-
Пятая нормальная форма (5НФ):
- Знаходзіцца ў 4НФ.
- Адсутнасць залежнасцей злучэння.
Мэты нормалізацыі:
- Змяншэнне лішніх дадзеных.
- Прадухіленне анамалій (ўстаўка, абнаўленне, выдаленне).
- Забеспячэнне цэласнасці дадзеных.
- Спрашчэнне структуры базы дадзеных.
Прыклад:
Табліца з лішнімі дадзенымі (не ў 1НФ):
| ЗаказID | Товар | Цена |
|---|---|---|
| 1 | Ноутбук, Мышь | 1000, 20 |
| 2 | Клавіятура | 50 |
Нормалізаваная табліца (у 1НФ і вышэй):
Табліца "Заказы":
| ЗаказID |
|---|
| 1 |
| 2 |
Табліца "Пазіцыі заказу":
| ПазіцыяID | ЗаказID | Товар | Цена |
|---|---|---|---|
| 1 | 1 | Ноутбук | 1000 |
| 2 | 1 | Мышь | 20 |
| 3 | 2 | Клавіятура | 50 |
Нормалізацыя — важны этап праектавання, але празмерная нормалізацыя можа прывесці да павелічэння колькасці злучэнняў пры запытах, што можа негатыўна паўплываць на прадукцыйнасць. Выбар аптымальнага ўзроўню нормалізацыі залежыць ад канкрэтных патрабаванняў і кампрамісаў. Часам выкарыстоўваецца дэнормалізацыя для аптымізацыі прадукцыйнасці ў пэўных сцэнарыях, свядома парушаючы правілы нормальных формаў.