Co to jest druga normalna forma?

  • W systemie zarządzania relacyjnymi bazami danych spójność i zależność danych mają ogromne znaczenie. Zasadniczo formularze Normalne są używane w celu uniknięcia nadmiarowości danych. Nadmiar danych prowadzi do anomalii, takich jak aktualizacja, wstawianie i usuwanie. W anomalii aktualizacji, jeśli tabela zawiera nadmiarowe dane, to podczas aktualizacji rekordów nie są one poprawnie aktualizowane, co powoduje, że dane są niespójne.
  • W przypadku anomalii wstawiania możemy to lepiej zrozumieć, biorąc przykład kolumny, której nie można zaktualizować o wartości null, jeśli tabela nie dopuszcza wartości null. Usunięcie anomalii pojawia się na zdjęciu, jeśli musimy usunąć określony rekord i jeśli ten rekord jest obecny w innych wierszach tabeli, usunięcie tego konkretnego rekordu spowoduje również usunięcie tego rekordu z innych wierszy.
  • Aby przezwyciężyć aktualizację, wstawiać i usuwać anomalie, dane należy znormalizować. Normalizacja eliminuje zbędne dane, a także zapewnia zależności danych. Normalizacja pomaga również logicznie przechowywać dane i zmniejsza przestrzeń do przechowywania bazy danych.
  • Różne formy normalne, które są powszechnie używane w systemie zarządzania relacyjnymi bazami danych, to pierwsza forma normalna, druga postać normalna, trzecia postać normalna, forma normalna Boyce-Codd (BCNF) itp. Aby uzyskać drugą postać normalną, pierwsza postać normalna powinna zostać osiągnięte jako pierwsze, co jest jednym z kryteriów tworzenia tabeli lub danych w drugiej normalnej formie. Reguła dla pierwszej postaci normalnej (1NF) jest taka, że ​​atrybut kolumny nie może zawierać wielu wartości, a raczej powinien zawierać wartości atomowe.

Jak działa Second Normal Form?

Zanim przejdziemy głęboko do koncepcji normalizacji, skupmy się na kilku podstawowych elementach związanych z tabelami i relacjami w bazach danych. Klucz w RDBMS służy do jednoznacznej identyfikacji rekordów w tabeli, a kluczem może być pojedyncza kolumna lub wiele kolumn. Klucz podstawowy to pojedyncza kolumna służąca do jednoznacznej identyfikacji rekordów. Złożony klucz główny składa się z wielu kolumn, które są również używane do identyfikowania unikalnych rekordów. W drugiej postaci normalnej musimy uzyskać klucz podstawowy z jedną kolumną. Klucz obcy w jednej tabeli służy do jednoznacznej identyfikacji rekordów w innej tabeli. W drugiej postaci normalnej każdy niekluczowy atrybut w relacji musi zależeć funkcjonalnie od klucza podstawowego.

Poniżej znajduje się kilka kroków, aby upewnić się, że dane są w drugiej normalnej formie:

  1. Pierwsza normalna forma powinna zostać osiągnięta.
  2. Usuwanie podzbiorów danych mających zastosowanie do wielu wierszy w tabeli i umieszczanie ich w różnych tabelach.
  3. Używanie kluczy obcych w celu zapewnienia relacji między utworzonymi tabelami.

Przykłady

Aby lepiej zrozumieć normalne formy, weźmy przykład z poniższej tabeli, a następnie kroki, aby osiągnąć drugą normalną formę.

Weźmy przykład poniższej tabeli „nauczyciel_detale”.

IDNazwaTematy
1289Ramesh SawantMatematyka, nauka
5678Shruti Shahjęzyk angielski
1267Nikhil DasHistoria, nauki społeczne
3409Pooja SharmaEkonomia

Powyższa tabela zawiera konkretne przedmioty nauczane przez każdego nauczyciela. Tutaj kolumny „Tematy” nie zawierają wartości atomowych, aw przypadku Id 1289 i 1267 w kolumnie „Tematy” jest więcej niż jeden podmiot. Jak widzimy, że kolumna „Tematy” nie ma wartości atomowych, musimy najpierw dostosować tabelę do Pierwszej Normalnej Formy, wykonując poniższe czynności.

IDNazwaTematy
1289Ramesh SawantMatematyka
1289Ramesh SawantNauka
5678Shruti Shahjęzyk angielski
1267Nikhil DasHistoria
1267Nikhil DasNauki społeczne
3409Pooja SharmaEkonomia

Teraz powyższa tabela jest w pierwszej normalnej formie, ponieważ wszystkie atrybuty mają wartość atomową.

Tutaj złożone klucze podstawowe to „Id i „Name”. Kolumna „Przedmioty” to atrybut niepierwotny. Także tutaj kolumna „Tematy” zależy tylko od kolumny Nazwa ”, która jest częścią złożonego klucza głównego. Tak więc tabela nie spełnia warunku drugiej normalnej formy.

Aby tabela była zgodna z Second Normal Form, musimy rozbić powyższą tabelę na dwie tabele, jak pokazano poniżej.

Tabela informacje o nauczycielu, jak pokazano poniżej:

IDNazwa
1289Ramesh Sawant
5678Shruti Shah
1267Nikhil Das
3409Pooja Sharma

Tabela tematów szczegółowych, jak pokazano poniżej:

IDTematy
1289Matematyka
1289Nauka
5678język angielski
1267Historia
1267Nauki społeczne
3409Ekonomia

Usunęliśmy początkową zależność funkcjonalną z tabeli. Tak więc w tabeli subject_details kolumna „Subjects” jest w pełni zależna od klucza podstawowego tabeli, tj. „Id”.

Zalety drugiej postaci normalnej

Poniżej znajduje się kilka zalet korzystania z drugiej normalnej postaci.

  1. Nadmiarowe dane są redukowane bardziej skutecznie.
  2. Dane są spójne w bazie danych.
  3. Poprawia elastyczność w projektowaniu bazy danych.
  4. Poprawia także ogólną organizację danych w bazie danych.
  5. Poprawia także bezpieczeństwo bazy danych.

Wniosek

  • Dla pomyślnego wdrożenia Systemu Zarządzania Bazą Danych, który spełnia wymagania dotyczące danych systemu Enterprise, projektowanie bazy danych ma kluczowe znaczenie. Normalizacja pomaga zarówno w projektowaniu, jak i utrzymaniu systemu zarządzania bazami danych, zapewniając spójność i zależność danych.
  • Chociaż druga postać normalna usuwa podzbiory danych, które mają zastosowanie do wielu wierszy w tabeli i zapewnia relację między tabelami za pomocą klucza obcego, nadal istnieje potrzeba usunięcia przejściowej zależności funkcjonalnej niepierwotnego atrybutu na dowolnym superkluczu powoduje użycie trzeciej normalnej formy. Tak więc użycie drugiej normalnej formy zależy od wymagań określonych przez firmę i należy ją starannie wybrać podczas projektowania systemu zarządzania bazą danych.

Polecane artykuły

To był przewodnik po drugiej normalnej formie. Tutaj omówiliśmy, co to jest druga normalna forma? Jak działa druga normalna forma? wraz z odpowiednim przykładem. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Rodzaje połączeń w SQL Server
  2. Co to jest SQL Injection?
  3. Pytania do wywiadu Oracle PL / SQL
  4. Kariery w SQL
  5. Top 6 rodzajów połączeń w MySQL z przykładami