SISTEM BASIS DATA 1 WAHYU PRATAMA, S.Kom., MMSI.
PERTEMUAN 4 – SBD 1 Model Data Relasional (Bagian 2)
Relasional Keys. Relasional Integrity Rules.
Bahasa pada Model Relasional.
Relasional Keys Super Key
Satu atribut/kumpulan atribut yang mengidentifikasi sebuah tupel didalam relasi (satu atau lebih field yang dapat dipilih untuk membedakan antara satu record dengan record lainnya).
Sebagai contoh, untuk tabel mahasiswa dibawah, super key-nya adalah:
NPM
Nama (dengan syarat tidak ada nama yang sama)
Alamat (dengan syarat tidak ada alamat yang sama)
NPM + Nama
NPM + Alamat
Nama + Alamat
NPM + Nama + Alamat
Tabel Mahasiswa (MHS) NPM
Nama
Alamat
10296832
Nurhayati
Jakarta
31296500
Budi
Bogor
41296525
Pipit
Depok
21196353
Andi
Tangerang
Relasional Keys
selanjutnya …
Candidate Key
Atribut didalam relasi yang biasanya mempunyai nilai yang berbeda (super key dengan jumlah field yang paling sedikit).
Sebagai contoh, untuk tabel mahasiswa dibawah, candidate key-nya adalah:
NPM
Nama
Alamat Tabel Mahasiswa (MHS) NPM
Nama
Alamat
10296832 Nurhayati
Jakarta
31296500 Budi
Bogor
41296525 Pipit
Depok
21196353 Andi
Tangerang
Relasional Keys
selanjutnya … Tabel Mahasiswa (MHS)
NPM
Nama
Alamat
10296832 Nurhayati
Jakarta
31296500 Budi
Bogor
41296525 Pipit
Depok
21196353 Andi
Tangerang
Primary Key, candidate key yang dipilih untuk mengidentifikasikan tupel secara unik dalam relasi.
Maka, primary key yang dipilih pada tabel mahasiswa di atas adalah NPM (unik, tidak ada NPM yang sama).
Alternate Key, candidate key yang tidak dipilih sebagai primary key.
Maka, candidate key yang dipilih pada tabel mahasiswa di atas adalah Nama dan Alamat.
Relasional Keys
selanjutnya … Tabel Nilai (NILAI)
NPM
KDMK
UTS
UAS
10296832
AK-011317
70
85
31296500
KK-011102
55
65
41296525
IT-011222
75
60
21196353
AK-011317
80
90
Foreign Key, atribut dengan domain yang sama yang menjadi kunci utama pada sebuah relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut biasa.
Maka, foreign key yang dipilih pada relasi dari tabel mahasiswa dan tabel mata kuliah (tabel nilai) di atas adalah KDMK.
Relasional Integrity Rules Null
Nilai suatu atribut yang tidak diketahui dan tidak cocok untuk baris (tuple) tersebut
Entity Integrity Tidak ada satu komponen primary key yang bernilai null
Referential Integrity
Suatu domain dapat dipakai sebagai primary key bila merupakan atribut tunggal pada domain yang bersangkutan
Bahasa pada Model Relasional Bahasa pada Model Data Relasional
Query Formal
Query Komersial
Prosedural
QUEL
Non Prosedural
QBE
SQL
Bahasa pada Model Relasional selanjutnya … Bahasa Query Formal
Bahasa query yang diterjemahkan dengan menggunakan simbol-simbol matematis. Bahasa query formal terbagi menjadi dua, yaitu:
Prosedural, yaitu pemakai memberi spesifikasi data apa yang dibutuhkan dan bagaimana cara mendapatkannya. Contoh: Aljabar Relasional, yaitu dimana query diekspresikan dengan cara menerapkan operator tertentu terhadap suatu tabel/relasi.
Non Prosedural, yaitu pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk mendapatkannya. Contoh: Kalkulus Relasional, dimana query menjelaskan set tupel yang diinginkan dengan cara menjelaskan predikat tupel yang diharapkan.
Bahasa pada Model Relasional selanjutnya … Bahasa Query Komersial
Bahasa Query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai lebih mudah menggunakannya (user friendly).
Contoh bahasa query komersial:
QUEL, bahasa ini dipergunakan secara berdiri sendiri dengan menuliskan instruksi ke prosesor QUEL (disisipkan ke dalam bahasa pemrograman C).
Contoh perintah: DDL (create, index, define view, destroy, modify), sedangkan DML (retrieve, replace, delete, append).
QBE (Query by Example), User dapat menggunakan atau memanggil tabel kosong di layar untuk diberi nama relasi, atribut dan instruksi yang diinginkan. Contoh perintah: P (print), I (insert), D (delete) dan U (update).
SQL (Structured Query Language), sekumpulan perintah khusus yang digunakan untuk mengakses data dalam database relasional. Contoh perintah: DDL (create, alter, truncate, drop), sedangkan DML (select, insert, update, delete)
Referensi
Materi Perkuliahan : Model Data Relasional, http://bit.ly/2dTNm2l
Materi Perkuliahan : Model Data Relasional, http://bit.ly/1Moorgz
Materi Perkuliahan : QUEL & QBE, http://bit.ly/2e4WncO