Database: Difference between revisions
| Line 53: | Line 53: | ||
===Aplikasi (perangkat lunak) lain=== | ===Aplikasi (perangkat lunak) lain=== | ||
Perangkat lunak pelengkap yang mendukung. | Perangkat lunak pelengkap yang mendukung. | ||
==Normalisasi Database== | |||
Perancangan database perlu memperhatikan efisiensi data. Beberapa data yang ada akan mempengaruhi tingkat efisiensi karena dapat terjadi penurunan. Oleh sebab itu, dalam database perlu dilakukan normalisasi. | |||
Normalisasi adalah suatu teknik untuk menghasilkan suatu hubungan antar atribut dengan memberikan kebutuhan data yang diinginkan oleh suatu perusahaan. Jadi, normalisasi database adalah proses pembentukan relasi database ke dalam bentuk normal. | |||
Dengan demikian, tujuan normalisasi database untuk menghilangkan sebagian besar ambiguitas, menghilangkan redudansi data (data ganda), serta memastikan data disimpan secara logis. | |||
Tahapan normalisasi database adalah bermacam-macam dari yang paling ringan UNF hingga paling tinggi (5NF). Berikut tahapan normalisasi database: | |||
*UNF: Tahap awal yang terdiri dari tabel dengan satu grup atau lebih yang berulang. | |||
*1NF: Normal tahap pertama. Dilakukan jika tabel memiliki atribut yang banyak dan sifatnya composite. Pada tahap ini setiap tabel harus berisi nilai tunggal dan unik. | |||
*2NF: Normal tahap kedua. Tahapan ini dilakukan jika 1NF sudah terpenuhi. 2NF dilakukan apabila atribut yang secara fungsional (functional dependency) tergantung pada primary key. Jadi, dalam 2NF primary key harus dalam kolom tunggal. | |||
*3NF: Normal tahap ketiga. Syarat yang ada dalam tahapan ini tidak adanya atribut non primary key yang bergantung pada non primary key lain atau tidak ada transitive functional dependency. | |||
*BCNF: Salah satunya dilakukan jika memiliki lebih dari satu kunci serta jika atribut utama sebagai candidate key dan candidate key tersebut salah satunya menjadi primary key. | |||
*4NF: Tahapan setelah BCNF terpenuhi. Kaidah dari 4NF tabelnya tidak boleh memiliki kebergantungan banyak nilai (multivalued attribute). | |||
*5NF: Tahapan ini dilakukan untuk tidak memiliki lossless docomposition (join tanpa adanya kehilangan informasi) menjadi tabel yang lebih kecil. Tahap kelima ini adalah tahapan yang paling jarang dipakai karena umumnya normalisasi hanya sampai pada 3NF. | |||
==Struktur Database== | ==Struktur Database== | ||