Skip to main content

Pergantungan Berganda dalam Pangkalan Data

Porta Toallas de Cocina Navideño Técnica Country (Jun 2026)

Porta Toallas de Cocina Navideño Técnica Country (Jun 2026)
Anonim

Dalam pangkalan data hubungan, kebergantungan berlaku apabila maklumat yang disimpan dalam jadual pangkalan data yang sama unik menentukan maklumat lain yang disimpan dalam jadual yang sama. Ketergantungan multivaluasi berlaku apabila kehadiran satu atau lebih baris di dalam jadual menunjukkan kehadiran satu atau lebih baris lain dalam jadual yang sama. Berikan cara lain, dua atribut (atau lajur) dalam jadual adalah satu sama lain, tetapi kedua-duanya bergantung pada atribut ketiga.

Ketergantungan multivaluasi menghalang bentuk normalisasi keempat biasa (4NF). Pangkalan data relasi mengikuti lima bentuk normal yang mewakili garis panduan untuk reka bentuk rekod. Mereka menghalang anomali kemas kini dan ketidakkonsistenan dalam data. Bentuk normal keempat berkaitan dengan banyak hubungan antara satu sama lain dalam pangkalan data.

Ketergantungan fungsional vs ketergantungan multivalued

Untuk memahami kebergantungan multivaluasi, adalah berguna untuk mengkaji semula apa kebergantungan yang berfungsi.

Jika atribut X unik menentukan atribut Y, maka Y bergantung kepada fungsi secara fasa. Ini ditulis sebagai X -> Y. Sebagai contoh, dalam jadual Pelajar di bawah, Student_Name menentukan Major:

Pelajar
Nama pelajarMajor
RaviSejarah Seni
BethKimia

Kebergantungan fungsi ini boleh ditulis: Student_Name -> Major . Setiap Student_Name menentukan tepat satu Utama dan tidak lagi.

Jika anda mahukan pangkalan data untuk mengesan sukan yang diambil oleh pelajar ini, anda mungkin berfikir cara yang paling mudah untuk melakukan ini adalah dengan menambah sesuatu yang bertajuk Sport:

Pelajar
Nama pelajarMajorSukan
RaviSejarah SeniBola sepak
RaviSejarah SeniBola tampar
RaviSejarah SeniTenis
BethKimiaTenis
BethKimiaBola sepak

Masalahnya ialah Ravi dan Beth bermain pelbagai sukan. Ia perlu menambah baris baharu untuk setiap sukan tambahan.

Jadual ini telah memperkenalkan pergantungan multivaluasi kerana utama dan sukan itu bebas dari satu sama lain tetapi kedua-duanya bergantung kepada pelajar.

Ini adalah contoh mudah dan mudah dikenalpasti, tetapi kebergantungan multivalue boleh menjadi masalah dalam pangkalan data yang besar dan rumit.

Kebergantungan multivaluasi ditulis X -> -> Y. Dalam kes ini:

Nama pelajar ->-> MajorNama pelajar->-> Sukan

Ini dibaca sebagai "Student_Name multidetermines Major" dan "Student_Name multidetermines Sport."

Kebergantungan multivaluasi sentiasa memerlukan sekurang-kurangnya tiga atribut kerana ia terdiri daripada sekurang-kurangnya dua atribut yang bergantung kepada ketiga.

Ketergantungan dan Normalisasi yang pelbagai

Jadual yang mempunyai kebergantungan multivaluasi melanggar piawaian normalisasi Borang Keempat Keempat (4NK) kerana ia mencipta kelebihan yang tidak perlu dan boleh menyumbang kepada data yang tidak konsisten. Untuk membawa sehingga 4NF, adalah perlu untuk memecahkan maklumat ini ke dalam dua jadual.

Jadual di bawah sekarang mempunyai kebergantungan fungsi Student_Name -> Utama, dan tiada kebergantungan multivalued:

Pelajar & Majors
Nama pelajarMajor
RaviSejarah Seni
RaviSejarah Seni
RaviSejarah Seni
BethKimia
BethKimia

Walaupun jadual ini juga mempunyai kebergantungan fungsional tunggal Student_Name -> Sukan:

Pelajar & Sukan
Nama pelajarSukan
RaviBola sepak
RaviBola tampar
RaviTenis
BethTenis
BethBola sepak

Sudah jelas bahawa normalisasi sering ditangani dengan memudahkan jadual kompleks supaya mereka mengandungi maklumat yang berkaitan dengan satu idea atau tema atau bukannya cuba membuat satu jadual mengandungi terlalu banyak maklumat yang berbeza.