Selamat malam semua...kali ini saya sebagai
mahasiswa amatiran mau berbagi sedikit ilmu mengenai Basis Data Lanjutan dari
postingan kemarin.. J
Sebelumnya saya berterimakasih sekali kepada agan JEWYNER yang sudah ngeposting artikel tentang artikel ini sebelumya...hehehe
Kali ini saya mau berbagi postingan yang berjudul
NORMALISALI TABEL DATABASE/Basis Data....sebenarnya postingan ini sebagian dari
tugas dosen saya...hehehe..maklum,sebagai mahasiswa kita diharuskan mempelajari
sendiri....
Langsung saja tanpa basa basi mari kita simak pokok
permasalahan===è è
NORMALISASI
Sedikit pengertian mengenai Normalisasi...NORMALISASI
merupakan teknik analisis data yang mengorganisasikan atribut-atribut data
dengan cara mengelompokkan sehingga terbentuk entitas yang non-redundant,
stabil, dan fleksible.
Normalisasi dilakukan sebagai uji coba pada
suatu relasi secara berkelanjutan untuk menentukan apakah relasi itu sudah
baik, yaitu dapat dilakukan proses insert,update,delete, dan modifikasi pada
satu atau beberapa atribut tanpa mempengaruhi integritas data dalam relasi
tersebut.
*naaah..jadi dari bacaan diatas kita dapat
menormalisasikan tabel database dengan beberapa tahapan..Pada proses normalisasi
terhadap tabel pada DATABASE agar lebih stabil dan mudah dipahami dapat
dilakukan dengan tiga tahap normalisasi antara lain
:
1.
BENTUK TIDAK NORMAL (UNNORMALIZED
FORM)
Bentuk
ini merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikukti
format tertentu, dapat saja data tidak lengkap atau terduplikasi.
Data dikumpulkan apa adanya sesuai dengan saat menginput.
Untuk
mentransformasikan tabel yang belum ternomalisasi di atas menjadi tabel yang
memenuhi kriteria 1NF adalah kita harus merubah seluruh atribut yang multivalue
menjadi atribut single value, dengan cara menghilangkan repeating group pada
tabel di atas.
Repeating
Group (elemen data berulang) adalah (No_Property, Alamat_Property,Tgl_Pinjam,
Tgl_Selesai, Biaya, No_Pemilik, Nama_Pemilik).
2.
BENTUK NORMALISASI KE SATU (FIRST NORMAL FORM/1NF).
Pada tahap ini dilakukan penghilangan beberapa group elemen
yang berulang agar menjadi satu harga tunggal yang berinteraksi di antara
setiap baris pada suatu tabel, dan setiap atribut harus mempunyai nilai data
yang atomic (bersifat atomic value). Atom adalah zat terkecil yang masih
memiliki sifat induknya, bila terpecah lagi maka ia tidak memiliki sifat
induknya.
Syarat normal ke satu (1-NF) antara lain:
1.
setiap data dibentuk dalam flat file, data dibentuk dalam satu record demi satu
record nilai dari field berupa “atomic value”.
2.
tidak ada set atribute yang berulang atau bernilai ganda.
3.
telah ditentukannya primary key untuk tabel / relasi tersebut.
4.
tiapatribut hanya memiliki satu pengertian.
Langkah
pertama yang dilakukan pada Tabel Pelanggan Biaya (pada Tabel
9.3) tersebut adalah menghilangkan elemen data yang berulang dengan
data-data Pelanggan yang sesuai pada setiap baris. Hasil dari tabel yang
telah memenuhi bentuk normal pertama dapat dilihat pada Tabel 9.4. kita
dapat mengidentifikasi primary key untuk relasi Pelanggan_Biaya yang masih
memiliki composite key (No_Pelanggan, No_Property). Pada kasus ini kita
akan memperoleh primary key yang bersifat composite key. Relasi
Pelanggan_Biaya dapat didefinisikan sebagai berikut. Pelanggan_Biaya
=(No_Pelanggan, No_Property, Nama, Alamat_Property, Tgl_Pinjam, Tgl_Selesai,
Biaya,No_Pemilik, Nama_Pemilik).
Bentuk
normal kedua didasari atas konsep full functional dependency (ketergantungan
fungsional sepenuhnya) yang dapat didefinisikan sebagai berikut. Jika A
adalah atribut-atribut dari suatu relasi, B dikatakan full functional
dependency (memiliki ketergantungan fungsional terhadap A, tetapi tidak secara
tepat memiliki ketergantungan fungsional dari subset (himpunan bagian) dari A.
Syarat normal kedua (2-NF) sebagai berikut.
1.
Bentuk data telah memenuhi kriteria bentuk normal kesatu.
2.
Atribute bukan kunci (non-key) haruslah memiliki ketergantungan
fungsional sepenuhnya (fully functional dependency) pada kunci utama /
primary key.Tabel Tabel Pelanggan Biaya dalam bentuk normal kedua (2-NF).
4.
BENTUK NORMAL KE TIGA (THIRD NORMAL FORM/3NF).
Walaupun relasi 2-NF memiliki redudansi yang lebih sedikit
dari pada relasi 1-NF, namun relasi tersebut masih mungkin mengalami
kendala bila terjadi anomaly peremajaan (update) terhadap relasi
tersebut. Misalkan kita akan melakukan update terhadap nama dari seorang
Pemilik (pemilik), seperti Durki (No_Pemilik: CO93), kita harus melakukan
update terhadap dua baris dalam relasi Property_Pemilik (lihat Tabel 9.5, (c)
relasi Property_Pemilik). Jika kita hanya mengupdate satu baris saja, sementara
baris yang lainnya tidak, maka data didalam database tersebut akan inkonsisten
/ tidak teratur. Anomaly update ini disebabkan oleh suatu ketergantungan
transitif (transitive dependency). Kita harus menghilangkan ketergantungan
tersebut dengan melakukan normalisasi ketiga (3-NF).
Syarat normal ketiga (Third Normal Form / 3 NF) sebagai berikut.
1.
Bentuk data telah memenuhi kriteria bentuk normal kedua.
2.
Atribute bukan kunci (non-key) harus tidak memiliki ketergantungan transitif,
dengan kata lain suatu atribut bukan kunci (non_key) tidak boleh memiliki
ketergantungan fungsional (functional dependency) terhadap atribut bukan kunci
lainnya, seluruh atribut bukan kunci pada suatu relasi hanya memiliki
ketergantungan fungsional terhadap priamry key di relasi itu saja. Seluruh
atribut non-primary key pada relasi Pelanggan dan Biaya di atas
terlihat memiliki ketergantungan fungsional (functional dependency) terhadap
primary key dari masing-masing tabel / relasi. Relasi / tabel Pelanggan
dan Biaya di atas tidak memiliki ketergantungan transitif (transitive
dependency), sehingga tabel tersebut telah memenuhi kriteria normal ketiga
(3-NF).
Seluruh
atribut non-primary key pada relasi Property_Pemilik di atas
terlihat memiliki ketergantungan fungsional (functional dependency)
terhadap primary key, kecuali Nama_Pemilik yang masih memiliki
ketergantungan fungsional (functional dependency) terhadap No_Pemilik.
Inilah contoh ketergantungan dari transitif (transitive dependency), yang
terjadi ketika atribut non-primary key (Nama_Pemilik) bergantung secara
fungsi terhadap satu atau lebih atribut non-primary key lainnya (No_Pemilik).
Kita harus menghilangkan ketergantungan transitif (transitive dependency)
tersebut dengan menjadikan relasi Property_Pemilik menjadi 2 relasi /
tabel dengan format / bentuk sebagai berikut.
·
Relasi / Tabel Property_Untuk_Pemilik yang terdiri dari
atribut-atribut:
Alamat_Property, Biaya, No_PemilikâNo_property
{No_property
sebagai primary key}
·
Dan relasi Pemilik yang terdiri dari atribut-atribut:
Nama_PemilikâNo_Pemilik
{No_Pemilik
sebagai primary key}
Hasil
akhir normalisasi tabel Pelanggan_Biaya sampai ke bentuk normal ketiga adalah sebagai
berikut:
SUMBER : https://jewyner.wordpress.com/category/pengertian-normalisasi-data-base-dan-contohnya/