Rumah >pangkalan data >tutorial mysql >CATATAN Bersatu atau Berasingan Jadual: Reka Bentuk Pangkalan Data Mana Yang Paling Baik Mengendalikan Subjenis?
Subjenis: Dilema dalam Reka Bentuk Pangkalan Data
Dalam bidang reka bentuk pangkalan data, persoalan subtaip timbul apabila berurusan dengan entiti yang berkongsi persamaan ciri tetapi juga mempamerkan sifat unik. Pertimbangkan senario di mana anda mempunyai tiga jadual: BUKU, ARTIKEL dan NOTA. Setiap buku atau artikel boleh mempunyai berbilang nota.
Reka Bentuk Asal: Jadual NOTA Bersatu
Reka bentuk awal memilih jadual NOTA bersatu dengan yang berikut lajur:
Dalam skema ini, note_type menunjukkan sama ada nota dikaitkan dengan buku atau artikel, manakala note_type_id berfungsi sebagai kunci asing kepada entiti masing-masing.
Reka Bentuk Alternatif: Jadual NOTA Asingkan
Pendekatan alternatif mencadangkan pembahagian NOTA kepada berasingan jadual:
Reka bentuk ini mengasingkan nota khusus buku dan nota khusus artikel, memperkenalkan jadual tambahan untuk memautkan kepada yang sepadan entiti.
Menilai Pilihan
Kedua-dua reka bentuk mempunyai kelebihannya. Jadual NOTES bersatu menawarkan kesederhanaan dan menghapuskan keperluan untuk jadual tambahan. Walau bagaimanapun, reka bentuk alternatif menyediakan pemisahan yang lebih jelas dan potensi untuk diperluaskan pada masa hadapan.
Perspektif Superjenis/Subjenis
Pertimbangkan untuk menggunakan pendekatan superjenis/subjenis, di mana PENERBITAN berfungsi sebagai supertype untuk BUKU dan ARTIKEL. Ini membenarkan satu jadual NOTA dikongsi dengan kunci asing kepada PUBLICATION. Struktur ini membolehkan mendapatkan semula nota yang lancar tanpa mengira sama ada ia dikaitkan dengan buku atau artikel.
Faedah Reka Bentuk Superjenis/Subjenis:
Struktur Contoh:
TABLE PUBLICATION ( ID (PK)
Atas ialah kandungan terperinci CATATAN Bersatu atau Berasingan Jadual: Reka Bentuk Pangkalan Data Mana Yang Paling Baik Mengendalikan Subjenis?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!