Saya sedang dalam proses merancang database dan saya memiliki pemikiran kedua tentang keputusan desain awal saya ...
Jenis produk adalah sebagai berikut ... Model, suku cadang, kit dan opsi suku cadang.
Opsi A (desain pertama): Saya berencana memiliki tabel terpisah untuk jenis produk di atas. Saya akan mengatakan sekitar 75% dari bidang akan sama di setiap tabel.
Saya membuat setiap jenis produk sebagai tabel terpisah karena asosiasi yang saya perlu buat di antara mereka. Misalnya, Model dapat memiliki banyak opsi dan opsi dapat memiliki banyak model. Opsi juga dapat memiliki banyak bagian dan sebagian dapat memiliki banyak opsi ... dan seterusnya ...
Opsi B: Alih-alih memiliki tabel terpisah, saya dapat membuat tabel yang disebut Produk yang mencakup model, komponen, kit pengganti, dan opsi. Saya dapat memiliki satu jenis bidang yang disebut untuk membedakan antara model, opsi, dll. Saya kira sisi bawah adalah beberapa bidang tidak akan pernah digunakan (nol kiri) untuk jenis produk tertentu. Saya menduga ini adalah di mana "bukan praktik terbaik" akan ikut bermain ..
Opsi B akan sangat mengurangi kompleksitas desain db. Saya juga tidak perlu khawatir tentang referensi banyak tabel ketika mengeluarkan data untuk permintaan ...