Beberapa relasi berkaitan dengan penyebutan relasi:
Menurut Gio Weiderhold (1988) , penyimpangan yang harus dihindari dalam modifikasi data meliputi:
Adalah proses penghapusan yan mengakibatkan hilangnya informasi rinci data lain yang tidak memiliki kerelasian secara logik. Contoh:
NIS | Nama_Siswa | Jenis_Kursus | Instruktur | Periode |
101 | Iin | Komputer | Irsyad | Mei 2012 |
102 | Aan | Bahasa Inggris | Rasid | Juni 2012 |
Adalah suatu proses penyisipan suatu nilai rinci data yang mengakibatkan perlunya penyisipan pada nilai rinci data lain yang tidak memiliki kerelasian secara logik.
Contoh:
NIS | Nama_Siswa | Jenis_Kursus | Instruktur | Periode |
101 | Iin | Komputer | Irsyad | Mei 2012 |
102 | Aan | Bahasa Inggris | Rasid | Juni 2012 |
Adalah suatu proses pembaharuan/update suatu nilai rinci data yang mengakibatkan perlunya mengubah pada nilai rinci data lain yang tidak memiliki kerelasian secara logik.
Contoh:
NIK | Nama_Karyawan | Golongan_Gaji | Gaji_Pokok |
1001 | Asad | IIIB | 2500000 |
1002 | Yuli | IIIA | 1950000 |
1003 | Arum | IIIB | 2500000 |
Permasalahan yang muncul dalam struktur relasi dapat ditemukan dengan cara mengetes ketergantungan relatif nilai nilai rinci data terhadap PK.
Yang paling baik dilakukan adalah jika struktur relasi dirancang sedemikian rupa sehingga atribut atribut non kunci hanya bergantung pada atribut PK dan tidak memiliki ketergantungan pada atribut lain.
Ketergantungan data terdiri atas:
FD muncul jika nilai rinci data pada suatu atribut menentukan nilai rinci data pada atribut lainnya.
Atribut (X) dikatakan berketergantungan secara fungsional terhadap atribut lainnya (Y) jika:
– setiap nilai X berkaitan dengan sebuah nilai pada Y
– untuk setiap record yang memiliki sembarang nilai X selalu berhubungan dengan nilai Y yang sama.
FD : R.X -> R.Y
FD : Functioanal Defendency
R : Relasi
X : Atribut penentu (determines) , yaitu CK.
Y : atribut yang bergantung (dependent)
Contoh:
Relasi Tour
No_Anggota | Nama | Alamat_Lokal | Tujuan | Biaya | Tanggal |
1111 | Sari | Batu aji | Jakarta | 600000 | 6-6-2012 |
1112 | Dwi | Jodoh | Bali | 1200000 | 8-8-2012 |
FD : R.X -> R.Y
FD : (Tour.No_Anggota, Tour.Tujuan, Tour.Tanggal)
(Tour.Nama, Tour.Alamat_Lokal, Tour.Biaya)
Dikatakan FFD jika FD pada suatu atribut dan tidak FD pada bagian lain dari kombinasi atribut.
Atribut (Y) mempunyai ketergantungan fungsional penuh terhadap atribut X jika:
– Y functionally dependency terhadap X
– Y tidak functionally dependency terhadap bagian tertentu dari X
FFD : R.X -> R.Y
FFD : Full Functioanal Defendency
R : Relasi
X : Atribut penentu (determines) , yaitu CK.
Y : atribut yang bergantung (dependent)
Contoh:
Relasi Tour
No_Anggota | Nama | Alamat_Lokal | Tujuan | Biaya | Tanggal |
1111 | Sari | Batu aji | Jakarta | 600000 | 6-6-2012 |
1112 | Dwi | Jodoh | Bali | 1200000 | 8-8-2012 |
FFD : R.X -> R.Y
FD : (Tour.Tujuan, Tour.Tanggal) à (Tour.Biaya)
FD : (Tour.No_Anggota) à (Tour.Nama, Tour.Alamat_Lokal)
TDF muncul jika suatu nilai pada atribut pertama menentukan nilai pada atribut kedua yang bukan CK dan nilai pada atribut kedua menentukan nilai pada atribut ketiga.
Atribut Zdikatakan mengalami ketergantungan transitif terhadap X, jika:
– Y functionally dependency terhadap X
– Z functionally dependency terhadap Y
TFD : R.X -> R.Y->R.Z
TFD : Transitive Defendency
R : Relasi
X : Atribut penentu (determines) , yaitu CK.
Y : atribut yang bergantung terhadap X dan penentu terhadap Z
Z : atribut yang tergantung terhadap Y
Contoh:
Relasi Karyawan
NIK | Nama_Karyawan | Golongan_Gaji | Gaji_Pokok |
1001 | Asad | IIIB | 2500000 |
1002 | Yuli | IIIA | 1950000 |
1003 | Arum | IIIB | 2500000 |
FFD : R.X -> R.Y->R.Z
TDF : (Karyawan.NIK) à (Karyawa.Golongan_Gaji)
à (Karyawan.Gaji_Pokok)
Atribut Y dikatakan mengalami ketergantungan total , jika:
– Y functionally dependency terhadap X
– X functionally dependency terhadap Y
TD : R.X ß -> R.Y
TD : Total Defendency
R : Relasi
X : Atribut penentu (determines) , sekaligus bergantung pada Y
Y : atribut yang bergantung dan penentu terhadap Z
Contoh:
Relasi Karyawan
NIK | Nama_Karyawan | Golongan_Gaji | Gaji_Pokok |
1001 | Asad | IIIB | 2500000 |
1002 | Yuli | IIIA | 1950000 |
1003 | Arum | IIIB | 2500000 |
FFD : R.X ß-> R.Z
TDF : (Karyawa.Golongan_Gaji) ßà (Karyawan.Gaji_Pokok)
Menggunakan diagram ketergantungan data:
– Cara 1: secara horisontal
– Cara 2 : secara vertikal
Langkahnya:
Cara 1:
No_Anggota Tanggal+Tujuan
Nama_Anggota Alamat_Lokal Biaya
Cara 2:
Tujuan |
No_Anggota |
Alamat_Lokal |
Nama_Anggota |
Biaya |
Tanggal |
Normalisasi diartikan sebagai suatu teknik yang menstrukturkan / mendekomposisi data dalam cara cara tertentu untuk mencegah timbulnya permasalahan pengolahan data dalam basis data.
Permasalahan yang dimaksud adalah berkaitan dengan penyimpangan penyimpangan yang terjadi akibat adanya kerangkapan data dalam relasi dan in-efisien pengolahan data.
Proses normalisasi menghasilkan relasi yang optimal, yaitu:
Bentuk normal yang dikenal hingga saat ini meliputi bentuk 1NF, 2NF, 3NF, BCNF, 4NF , 5NF, DKNF dan RUNF:
Relasi yang dirancang tanpa mengindahkan batasan dalam definasi basis data dan karakteristik RDBM,
Mempunyai kriteria:
harus memnuhi kriteria:
Permasalahan dalam INF :
Mengubah relasi UNF menjadi 1NF:
Mempunyai kriteria:
Permasalahan dalam 2NF:
Cara mengubah relasi 1Nfmenjadi 2NF:
Disebut sebagai 3NF jika memenuhi kriteria:
Pemasalahan di 3NF: keberadaan penentu yang tidak merupakan bagian dari PK menghasilkan duplikasi rinci data pada atribut yang berfungsi sebagai FK
( duplikasi berbeda dengan kerangkapan data)
Cara mengubah 2NF menjadi 3NF:
Contoh:
R = (A,B,C) dengan PK = A
FD:R.BàR.C
didekomposisikan menjadi
R1=(B,C)
R2 = (A,B) dengan FK :B referances R1
dikemukakan oleh R.F. Boyce dan E.F Codd harus memenuhi kriteria:
jika memenuhi kriteria:
Suatu relasi memenuhi kriteria 5NF jika kerelasian antar data dalam relasi tersebut tidak dapat direkontruksi dari struktur relasi yang sederhana
Dikatan sebagai DKNF jika setiap batasan dapat disimpulkan secara sederhana dengan mengetahui sekumpulan nama atribut dan domainnya selama menggunakan sekumpulan atribut pada kuncinya.
Dikemukakan oleh R. Fagin 1982 danbersifat sangat spesifik artinya tidak semua relasi dapat mencapai level ini
Bentuk UNF dari Relasi Supplier
Kode_Supplier | Status | Kota | Kode_Barang | Jumlah_Barang |
S01 | 10 | Jakarta | B01 | 100 |
B02 | 150 | |||
S02 | 20 | Surabaya | B02 | 250 |
B04 | 200 | |||
S03 | 30 | Yogyakarta | B05 | 150 |
Bentuk 1NF dari Relasi Supplier
Kode_Supplier | Status | Kota | Kode_Barang | Jumlah_Barang |
S01 | 10 | Jakarta | B01 | 100 |
S01 | 10 | Jakarta | B02 | 150 |
S02 | 20 | Surabaya | B02 | 250 |
S02 | 20 | Surabaya | B04 | 200 |
S03 | 30 | Yogyakarta | B05 | 150 |
Bentuk 2NF:
Relasi Supplier
Kode_Supplier | Status | Kota |
S01 | 10 | Jakarta |
S02 | 20 | Surabaya |
S03 | 30 | Yogyakarta |
Relasi Barang
Kode_Supplier | Kode_Barang | Jumlah_Barang |
S01 | B01 | 100 |
S01 | B02 | 150 |
S02 | B02 | 250 |
S02 | B04 | 200 |
S03 | B05 | 150 |
Bentuk normalisasi bentuk 3NF
Kota |
Status *Kota |
1. Relasi Barang
2. Relasi Supplier
Supplier |
Kode_Supplier*Status** |
3. Relasi Kota
Barang |
Kode_Supplier**Kode_Barang*Jumlah_Barang |
Penerapan normalisasi juga menyebabkan efek samping yang tidak diharapkan:
Motivasi
Lebih baik menjaga mulut Anda tetap tertutup dan membiarkan orang lain menganggap Anda bodoh, daripada membuka mulut Anda dan menegaskan semua anggapan mereka
Kepuasan terletak pada usaha, bukan pada hasil. Berusaha dengan keras adalah kemenangan yang hakiki
Orang-orang yang melontarkan kritik bagi kita pada hakikatnya adalah pengawal jiwa kita, yang bekerja tanpa bayaran