Apakah Pergerakan Transitif dalam Pangkalan Data

Elakkan Ketergantungan Transitif untuk Membantu Memastikan Normalisasi

Ketergantungan transitif dalam pangkalan data adalah hubungan tidak langsung antara nilai dalam jadual yang sama yang menyebabkan kebergantungan berfungsi . Untuk mencapai standard normalisasi Borang Ketiga Ketiga (3NF), anda mesti menghapuskan sebarang pergantungan transitif.

Dengan sifatnya, ketergantungan transitif memerlukan tiga atau lebih atribut (atau lajur pangkalan data) yang mempunyai kebergantungan yang berfungsi di antara mereka, yang bermaksud bahawa Lajur A dalam jadual bergantung pada Kolum B melalui Kolom C pertengahan

Mari lihat bagaimana ini boleh berfungsi.

Contoh Ketergantungan Transitif

PENGENALAN

Pengarang_ID Pengarang Buku Author_Nationality
Auth_001 Kad Orson Scott Permainan Ender Amerika Syarikat
Auth_001 Kad Orson Scott Permainan Ender Amerika Syarikat
Auth_002 Margaret Atwood Kisah Handmaid's Kanada

Dalam contoh AUTHORS di atas:

Tetapi jadual ini memperkenalkan kebergantungan transitif:

Mengelakkan Dependensi Transitif

Untuk memastikan Formula Ketiga, mari keluarkan pergantungan transitif.

Kita boleh mulakan dengan membuang lajur Buku dari jadual Pengarang dan membuat jadual Buku berasingan:

BUKU

Book_ID Buku Pengarang_ID
Book_001 Permainan Ender Auth_001
Book_001 Kanak-kanak Minda Auth_001
Book_002 Kisah Handmaid's Auth_002

PENGENALAN

Pengarang_ID Pengarang Author_Nationality
Auth_001 Kad Orson Scott Amerika Syarikat
Auth_002 Margaret Atwood Kanada

Adakah ini membetulkannya? Mari kita periksa kebergantungan kita sekarang:

Jadual BUKU :

Jadual AUTHORS :

Kita perlu menambah jadual ketiga untuk menormalkan data ini:

NEGARA

Country_ID Negara
Coun_001 Amerika Syarikat
Coun_002 Kanada

PENGENALAN

Pengarang_ID Pengarang Country_ID
Auth_001 Kad Orson Scott Coun_001
Auth_002 Margaret Atwood Coun_002

Sekarang kita mempunyai tiga jadual, menggunakan kekunci asing untuk menghubungkan antara jadual:

Mengapa Dependencies Transitif Adakah Reka Bentuk Pangkalan Data Bad

Apakah nilai mengelakkan dependensi transitif untuk membantu memastikan 3NF? Mari kita pertimbangkan jadual pertama kami dan lihat isu yang diciptanya:

PENGENALAN

Pengarang_ID Pengarang Buku Author_Nationality
Auth_001 Kad Orson Scott Permainan Ender Amerika Syarikat
Auth_001 Kad Orson Scott Kanak-kanak Minda Amerika Syarikat
Auth_002 Margaret Atwood Kisah Handmaid's Kanada

Reka bentuk jenis ini boleh menyumbang kepada anomali data dan ketidakkonsistenan, contohnya:

Ini adalah beberapa sebab mengapa normalisasi , dan mengelakkan dependensi transitif, melindungi data dan memastikan konsistensi.