Lompat ke konten

Pertemuan 12: Normalisasi dan Bentuk Normal 1 ​

Fase 4 · Normalisasi±100 menitSumber: slide 101-106, 119-121

Tujuan pembelajaran ​

Setelah pertemuan ini, Anda mampu:

  • menjelaskan mengapa normalisasi diperlukan;
  • mengenali tabel yang tidak normal;
  • mengubah tabel tidak normal menjadi bentuk normal pertama (1NF).

Peta materi ​

1. Mengapa perlu normalisasi? ​

Bayangkan satu buku catatan besar yang menulis ulang nama, alamat, dan nomor telepon pelanggan setiap kali ia berbelanja. Jika pelanggan pindah rumah, Anda harus mencari dan mengubah puluhan baris. Satu baris terlewat saja, data jadi bertentangan.

Normalisasi adalah proses atau tahapan dalam merancang basis data yang bertujuan menghilangkan data ganda (redundancy) dan data yang tidak konsisten.

Aturan pokoknya

Pecah tabel besar menjadi tabel-tabel kecil, lalu hubungkan dengan relasi.

Sejarah singkat ​

Edgar F. Codd, pencetus model relasional, mengajukan bentuk normal pertama, kedua, dan ketiga. Secara teori ada sampai bentuk normal ke-6, tetapi di praktik hampir semua basis data berhenti di bentuk normal ke-3.

2. Dua arah merancang basis data ​

Pertemuan 3-7Normalisasi
Titik awalRuang lingkup dan ideHasil akhir yang sudah ada (laporan, formulir, nota)
LangkahEntity, attribute, relationshipRapikan tabel hasil akhir, lalu bentuk model datanya

Normalisasi biasanya datang dari kebutuhan akhir yang sudah selesai. Kasus kita: laporan Order dari toko online.

3. Tabel awal (tidak normal) ​

Bayangkan laporan order yang dibuat langsung dalam satu tabel besar:

kode_ordertanggalpembelialamat_pengirimanpenjualproduk1_namaproduk1_hargaproduk1_jumlahproduk1_totalproduk2_namaproduk2_hargaproduk2_jumlahproduk2_totaltotal_belanjatotal_berat
O0012024-01-10JokoJl. Mawar 1Galeri OlahragaSepatu Lari3500001350000Kaos9000021800005300001200

Masalah yang terlihat:

  • kolom Produk berulang (produk1, produk2, dan seterusnya);
  • bila pembeli membeli lima barang, tabel harus dirombak;
  • ada kolom total yang bisa dihitung dari kolom lain;
  • sebagian kolom (Produk 2 dan seterusnya) sering kosong.

4. Aturan Bentuk Normal Pertama (1NF) ​

1NF

  1. Tiap kolom hanya menyimpan satu nilai.
  2. Tidak ada kolom duplikat/ganda.
  3. Tidak ada baris duplikat/ganda.
  4. Tidak ada atribut turunan.

5. Menerapkan 1NF ​

Langkah 1: kolom ganda. Kolom Produk Nama, Harga, Jumlah, Berat, dan Total berulang beberapa kali. Ubah menjadi satu baris untuk setiap produk dalam sebuah order.

Langkah 2: atribut turunan. Produk Total, Total Harga, Total Berat, dan Total Belanja dihitung dari kolom lain. Hapus; nilainya bisa dihitung kapan saja.

Hasil 1NF:

kode_ordertanggalpembelialamat_pengirimanpenjualskunama_produkhargajumlahberat
O0012024-01-10JokoJl. Mawar 1Galeri OlahragaBRG001Sepatu Lari3500001800
O0012024-01-10JokoJl. Mawar 1Galeri OlahragaBRG002Kaos900002200
O0022024-01-12SariJl. Melati 5Galeri OlahragaBRG001Sepatu Lari3500001800

Tabel ini sudah rapi dari sisi kolom dan baris. Namun perhatikan: data Joko, Galeri Olahraga, dan Sepatu Lari masih tertulis berulang. Itu yang akan dirapikan oleh 2NF di Pertemuan 13.

Gunakan spreadsheet materi asli

Slide asli menyertakan spreadsheet contoh untuk laporan order dan setiap tahap normalisasinya. Bukalah sambil mengikuti halaman ini agar lebih mudah.

Latihan ​

Ubah tabel Nota Kantin berikut ke bentuk 1NF:

no_nota, tanggal, kasir, menu1, harga1, menu2, harga2, menu3, harga3, total

Contoh jawaban

Satu baris per menu pada sebuah nota, dan kolom total dihapus karena atribut turunan:

no_nota, tanggal, kasir, nama_menu, harga

no_notatanggalkasirnama_menuharga
N012024-02-01RinaNasi Goreng15000
N012024-02-01RinaEs Teh5000

Kuis cepat ​

1. Tujuan utama normalisasi adalah...

2. Aturan pokok normalisasi adalah...

3. Mana yang BUKAN aturan 1NF?

4. Dalam praktik, bentuk normal yang umumnya dicapai adalah sampai...

Terjawab 0 dari 4 soal

Rangkuman ​

Yang harus diingat

  • Normalisasi menghilangkan data ganda dan data tidak konsisten dengan cara memecah tabel besar.
  • Praktiknya berhenti di 3NF.
  • 1NF: satu nilai per kolom, tanpa kolom ganda, tanpa baris ganda, tanpa atribut turunan.
IstilahArti
RedundancyData yang tertulis berulang tanpa perlu
InkonsistensiData yang saling bertentangan
1NFBentuk normal pertama

Tugas mandiri ​

Cari satu nota atau formulir nyata (nota belanja, kwitansi SPP, jadwal kuliah). Salin ke tabel, tandai bagian yang melanggar aturan 1NF, lalu ubah ke 1NF.

Progres tersimpan di browser Anda dan tampil di halaman beranda.

Ruang Belajar · Materi kuliah dan pelatihan teknologi