Spisu treści:
Definicja - Co oznacza druga postać normalna (2NF)?
Druga postać normalna (2NF) to drugi krok w normalizacji bazy danych. 2NF opiera się na pierwszej normalnej formie (1NF).
Normalizacja to proces organizowania danych w bazie danych, aby spełniały dwa podstawowe wymagania:
- Nie ma nadmiarowości danych (wszystkie dane są przechowywane tylko w jednym miejscu).
- Zależności danych są logiczne (wszystkie powiązane elementy danych są przechowywane razem).
Tabela 1NF ma postać 2NF wtedy i tylko wtedy, gdy wszystkie jej niepierwotne atrybuty są funkcjonalnie zależne od całości każdego klucza kandydującego.
Techopedia wyjaśnia Second Normal Form (2NF)
Po spełnieniu wymagań 1NF 2NF wymaga od projektanta bazy danych:
- Podziel wszystkie dane, tworząc relacje wiele do wielu, i przechowuj dane jako osobne tabele. Na przykład w bazie danych używanej przez aplikację szkolną dwie tabele to STUDENT i SUBJECT. W prawdziwym życiu uczeń bierze kilka przedmiotów jednocześnie, podczas gdy przedmiot jest studiowany przez kilku studentów. Są to relacje wiele do wielu. 2NF stwierdza, że relację tę należy podzielić na więcej niż dwie powyższe tabele (STUDENT i TEMAT). Jednym ze sposobów ich podziału jest wprowadzenie trzeciej tabeli, która zawiera kolumny Student_ID, Subject_ID, Semester i Year. W ten sposób nie ma bezpośredniego związku między STUDENTEM a TEMATEM, ponieważ wszystkie relacje są tworzone pośrednio przez trzecią tabelę.
- Utwórz relacje między tabelami za pomocą kluczy obcych. Na przykład baza danych banku zawiera dwie tabele: CUSTOMER_MASTER (do przechowywania danych klienta) i ACCOUNT_MASTER (do przechowywania informacji o rachunkach bankowych, w tym o tym, który klient posiada dane konto). Musi istnieć sposób na połączenie dwóch tabel, aby wiedzieć, kto jest klientem dla każdego konta. Można to zrobić za pomocą klucza obcego, który jest kolumną w tabeli ACCOUNT_MASTER wskazującą na odpowiednią kolumnę w tabeli CUSTOMER_MASTER.
Tabela, dla której nie ma częściowych zależności funkcjonalnych od klucza podstawowego, może, ale nie musi być w 2NF. Oprócz klucza podstawowego tabela może zawierać inne klucze kandydujące; należy ustalić, że żadne atrybuty inne niż podstawowe nie mają zależności klucza częściowego od któregokolwiek z tych kluczy kandydujących.
