Logical Database Design and the Relational Model
Desain Basis Data Logis dan Model Relasional
Objectives
Key Fields
Integrity Constraints
Memetakan Entitas Asosiasi
Objectives
- Definisikan istilah
- Sebutkan lima sifat hubungan
- Nyatakan dua properti kunci kandidat
- Tentukan bentuk normal pertama, kedua, dan ketiga
- Jelaskan masalah dari penggabungan hubungan
- Ubah diagram E-R dan EER menjadi hubungan
- Membuat tabel dengan batasan integritas entitas dan relasional
- Gunakan normalisasi untuk mengonversi tabel anomali ke hubungan yang terstruktur dengan baik
Komponen model relasional
- Struktur data.
- Manipulasi data.
- Integritas data.
Relation
- Relasi adalah tabel data dua dimensi yang diberi nama.
- Tabel terdiri dari baris (catatan) dan kolom (atribut atau bidang).
- Persyaratan untuk tabel agar memenuhi syarat sebagai relasi:
- Baris harus unik (tidak dapat memiliki dua baris dengan nilai yang persis sama untuk semua bidangnya).
- Atribut (kolom) dalam tabel harus memiliki nama unik.
- Urutan kolom harus tidak relevan.
- Urutan baris harus tidak relevan.
Kunci
adalah bidang khusus yang melayani dua tujuan utama:
- Kunci primer. Pengidentifikasi unik hubungan. Contohnya termasuk nomor karyawan, nomor jaminan sosial, dll. Ini menjamin bahwa semua baris unik.
- Kunci asing. Pasta yang memungkinkan hubungan dependen (di banyak sisi hubungan) untuk merujuk ke hubungan induknya (di satu sisi hubungan).
Kunci dapat
sederhana (satu bidang) atau gabungan (lebih dari satu bidang).
Kunci
biasanya digunakan sebagai indeks untuk mempercepat respons terhadap pertanyaan
pengguna.
1. Kendala Domain
Nilai yang diizinkan untuk atribut.
2. Integritas Entitas
Atribut kunci primer tidak boleh nol. Semua bidang kunci utama harus memiliki data
3. Pernyataan Tindakan
Peraturan bisnis. Ingat dari Bab 4
Kendala Integritas
Referential
Integrity rule menyatakan bahwa setiap nilai kunci asing (pada relasi banyak
pihak) harus cocok dengan nilai kunci primer dalam relasi satu sisi. (Atau
kunci asing bisa nol)
Misalnya: Hapus
Aturan
- Batasi - jangan izinkan penghapusan sisi "induk" jika baris terkait ada di sisi "tergantung"
- Cascade – secara otomatis menghapus baris samping "dependen" yang sesuai dengan baris samping "induk" yang akan dihapus
- Set-to-Null – set kunci asing di sisi dependen menjadi nol jika menghapus dari sisi induk tidak diizinkan untuk entitas yang lemah
Mengubah
Diagram EER menjadi Hubungan
Memetakan
Entitas Reguler ke Hubungan:
- Atribut sederhana: Atribut E-R memetakan langsung ke relasi
- Atribut komposit: Gunakan hanya atribut komponennya yang sederhana
- Atribut Multinilai: Menjadi hubungan terpisah dengan kunci asing yang diambil dari entitas superior
Memetakan
Entitas yang Lemah
- Menjadi hubungan terpisah dengan kunci asing yang diambil dari entitas superior
- Kunci primer terdiri dari:
- Identifikasi parsial dari entitas yang lemah
- Kunci utama untuk mengidentifikasi hubungan (entitas yang kuat)
Memetakan
Hubungan Biner
- Satu-ke-Banyak – Primer di satu sisi menjadi kunci asing di banyak sisi
- Many-to-Many – Membuat hubungan baru dengan kunci utama dari dua entitas sebagai kunci utamanya
- Satu-ke-Satu – Kunci utama pada sisi wajib menjadi kunci asing pada sisi opsional
Memetakan
Hubungan Unary
- Kunci asing Satu-ke-Banyak – Rekursif dalam hubungan yang sama
- Hubungan Many-to-Many – Two:
- Pengidentifikasi Tidak Ditugaskan. Kunci primer default untuk hubungan asosiasi terdiri dari kunci utama dari dua entitas (seperti dalam hubungan M: N)
- Identifier Ditugaskan. Itu wajar dan akrab bagi pengguna akhir. Pengidentifikasi default mungkin tidak unik
Normalisasi
Data
Terutama
alat untuk memvalidasi dan meningkatkan desain logis sehingga memenuhi batasan
tertentu yang menghindari duplikasi data yang tidak perlu.
Proses
penguraian hubungan dengan anomali untuk menghasilkan hubungan yang lebih kecil
dan terstruktur dengan baik
Hubungan
yang Terstruktur dengan Baik
Relasi yang
berisi redundansi data minimal dan memungkinkan pengguna untuk menyisipkan,
menghapus, dan memperbarui baris tanpa menyebabkan inkonsistensi data
Tujuannya
adalah untuk menghindari anomali:
- Penyisipan Anomali – menambahkan baris baru memaksa pengguna untuk membuat data duplikat
- Penghapusan Anomali - menghapus baris dapat menyebabkan hilangnya data yang akan diperlukan untuk baris lain di masa depan
- Modifikasi Anomali - mengubah data dalam suatu baris memaksa perubahan ke baris lain karena duplikasi
Komentar
Posting Komentar