Verilənlər bazası dizaynında bir çox dəyərli bağımlılık

Bir çox dəyərli asılılıq dördüncü normal formu pozur

Bir relational veritabanında, eyni verilənlər bazası masasında saxlanılan məlumatlar eyni cədvəldə saxlanılan digər məlumatları xüsusi olaraq təyin edərkən bir asılılıq olur. Bir çox dəyərli asılılıq bir masada bir və ya bir neçə satırın eyni masada bir və ya bir neçə digər satırın mövcudluğunu nəzərdə tutur. Başqa bir şəkildə qoyun ki, masada iki sətir (və ya sütun) bir-birindən asılıdır, lakin hər ikisi üçüncü bir xüsusiyyətdən asılıdır.

Bir çox dəyərli asılılıq normallaşma standart dördüncü normal formasını (4NF) maneə törədir. Əlaqədar məlumat bazaları, rekord dizayn üçün rəhbər qaydaları əks etdirən beş normal formanı izləyir. Yeniləmə anomaliyaları və məlumatlarda tutarsızlıqları qarşısını alırlar. Dördüncü normal forma bir verilənlər bazasında çox-bir əlaqələrlə məşğul olur.

Funksional Bağımlılıq və Birlikdə Müəyyən Bağımlılıq

Bir çox dəyərli asılılığı anlamaq üçün funksional asılılığın nə olduğunu yenidən nəzərdən keçirmək faydalıdır.

Bir x öznitelikte Y öznitelikini təyin edərsə, Y funksional olaraq X-yə bağlıdır. Bu, X -> Y kimi yazılır. Məsələn, aşağıdakı Tələbələr şagirdliyindəki Student_Name Major təyin edir:

Tələbələr
Tələbə adı Böyük
Ravi İncəsənət tarixi
Beth Kimya


Bu funksional asılılıq yazıla bilər: Student_Name -> Major . Hər bir Student_Name tam bir Major təyin edir və daha çox.

Verilənlər bazasında bu tələbələrin idmanını izləməkini istəyirsinizsə, bunu etmək üçün ən asan yolu İdman adına əlavə sütun əlavə etməkdir:

Tələbələr
Tələbə adı Böyük İdman
Ravi İncəsənət tarixi Futbol
Ravi İncəsənət tarixi Voleybol
Ravi İncəsənət tarixi Tennis
Beth Kimya Tennis
Beth Kimya Futbol


Burada problem həm Ravi, həm də Bet birdən çox idman oynayır. Hər əlavə idman üçün yeni bir sıra əlavə etmək lazımdır.

Bu cədvəl, birincil və idman bir-birindən müstəqil olduğundan, həm də tələbəyə bağlıdır, çünki bir çox dəyərli asılılığı təqdim etmişdir.

Bu sadə bir nümunədir və asanlıqla müəyyən edilə bilir, ancaq çoxməqsədli bir asılılıq böyük, kompleks bir verilənlər bazasında problem ola bilər.

Bir çox dəyərli asılılıq X -> -> Y yazılır. Bu vəziyyətdə:

Student_Name -> -> Major
Student_Name -> -> İdman

Bu "Student_Name multidetermines Major" və "Student_Name multidetines Sport" kimi oxunur.

Bir çox dəyərli asılılıq hər zaman ən azı üç xüsusiyyət tələb edir, çünki üçdə birinə asılı olan ən azı iki xüsusiyyətdən ibarətdir.

Multivalued Dependency və Normalləşmə

Bir çox dəyərli asılılığı olan bir tablo, Dördüncü Normal Forma (4NK) normallaşma standartını pozur, çünki lazımsız redundancies yaradır və uyğun olmayan məlumatlara kömək edə bilər. Bunu 4NF'ye çatdırmaq üçün bu məlumatları iki cədvəldə pozmaq lazımdır.

Aşağıdakı cədvəl indi Student_Name -> Major funksional asılılığına malikdir və bir çox əlavələr mövcud deyildir:

Şagirdlər və əsaslar
Tələbə adı Böyük
Ravi İncəsənət tarixi
Ravi İncəsənət tarixi
Ravi İncəsənət tarixi
Beth Kimya
Beth Kimya

Bu cədvəl həmçinin Student_Name -> Sport:

Tələbə və İdman
Tələbə adı İdman
Ravi Futbol
Ravi Voleybol
Ravi Tennis
Beth Tennis
Beth Futbol

Normallaşmanın tez-tez mürəkkəb masaların sadələşdirilməsi yolu ilə həll edildiyi aydındır ki, onlar bir cədvəldən çox fərqli informasiyaya malik olmaqdan başqa, bir fikir və ya mövzu ilə bağlı informasiyanı ehtiva edirlər.