[DU1023]-[2011/2012]#[7]
1 IDENTITAS
Kajian
Relasi
Topik
Konsep Dasar Basis Data Relasional
Referensi
1. Munir, R., Matematika Diskrit, Edisi kedua, untuk Infomatika, Bandung, 2003
2. Rosen, K. H., Discrete Mathematics and Its Applications, 5th edition, McGraw-Hill, Singapore, 2003
3. Lipschutz S., Lipson M., Discrete Mathematics, McGraw Hill USA, 1997
Kompetensi Utama
1. Mahasiswa mampu memberikan contoh operasi relasi Seleksi
2. Mahasiswa mampu memberikan contoh operasi relasi Proyeksi
3. Mahasiswa mampu memberikan contoh operasi relasi Join
4. Mahasiswa mampu membedakan kardinalitas relasi
5. Mahasiswa mampu memberi contoh kasus yang berkaitan dengan kardinalitas relasi satu ke satu
6. Mahasiswa mampu memberi contoh kasus yang berkaitan dengan kardinalitas relasi satu ke Banyak
7. Mahasiswa mampu memberi contoh kasus yang berkaitan dengan kardinalitas relasi banyak ke satu
8. Mahasiswa mampu memberi contoh kasus yang berkaitan dengan kardinalitas relasi banyak ke banyak
9. Mahasiswa mampu membedakan key dalam relasi
10. Mahasiswa mampu memberi contoh Super_key
11. Mahasiswa mampu memberi contoh Candidate_key
12. Mahasiswa mampu memberi contoh Primary_key
Lama Pengerjaan
100 Menit
Jenis Pengerjaan *(bisa dipilih lebih dari 1)
Individu Kelompok Mandiri Terbimbing
2 PERTANYAAN PENDAHULUAN
a. Apa yang kalian ketahui tentang operasi relasi seleksi, proyeksi, Join?
b. Berikan contoh relasi seleksi, Proyeksi dan Join yang anda ketahui?
c. Jelaskan yang dimaksud kardinalitas dalam relasi
d. Sebutkan dan jelaskan jenis kardinalitas dalam relasi!
e. Berikan sebuah contoh kardinalitas dalam relasi database!
f. Apa yang dimaksud Key dalam relasi?
g. Sebutkan jenis key dan contohnya masing-masing!
1
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]
3 RINGKASAN TEORI
3.1 PENGANTAR
3.1.1 Relasi n-ary
Sebagaimana kita ketahui relasi biner hanya menghubungkan antara dua buah himpunan. Relasi yang lebih umum
menghubungkan lebih dari dua buah himpunan. Relasi tersebut dinamakan relasi n-ary (baca: ener).Jika n = 2,
maka relasinya dinamakan relasi biner (bi = 2). Relasi n-ary mempunyai terapan penting di dalam basis data
Contoh 1
Misalkan diketahui
NIM = {13598011, 13598014, 13598015, 13598019, 13598021, 13598025}
Nama = {Amir, Santi, Irwan, Ahmad, Cecep, Hamdan}
MatKul = {Matematika Diskrit, Algoritma, Struktur Data, Arsitektur Komputer}
Nilai = {A, B, C, D, E}
Relasi MHS terdiri dari 5-tupel (NIM, Nama, MatKul, Nilai): MHS NIM Nama MatKul Nilai
Contoh 2
Satu contoh relasi yang bernama MHS adalah
2
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]
Diagram di atas memperlihatkan entitas mahasiswa memiliki atribut NPM, Nama, Alamat, Hobby, Telp, dan Tgl
Lahir, bila dinyatakan dalam tabel menjadi
Tabel Mahasiswa
NPM NAMA ALAMAT HOBBY TGL LAHIR TELP
3.1.3 Query
Operasi yang dilakukan terhadap basisdata dilakukan dengan perintah pertanyaan yang disebut query. Pada
prinsipnya Query merupakan sebuah operasi permintaan akan data-data yang dibutuhkan..
Contoh 5
Berikut ini beberapa contoh query dalam basis Data:
“tampilkan semua mahasiswa yang mengambil mata kuliah Matematika Diskrit”
“tampilkan daftar nilai mahasiswa dengan NIM = 13598015”
“tampilkan daftar mahasiswa yang terdiri atas NIM dan mata kuliah yang diambil”
Query terhadap basisdata relasional dapat dinyatakan secara abstrak dengan operasi pada relasi n-ary. Ada
beberapa operasi yang dapat digunakan dalam query, diantaranya adalah seleksi, proyeksi, dan join.
3
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]
3.1.3.1 Seleksi
Operasi seleksi memilih baris tertentu dari suatu tabel yang memenuhi persyaratan tertentu.
Operator yang digunakan untuk menuliskan seleksi adalah
Contoh 6
Misalkan untuk relasi MHS kita ingin menampilkan daftar mahasiswa yang mengambil mata kuliah Matematika
Diskrit. Operasi seleksinya adalah Matkul=”Matematika Diskrit” (MHS)
Hasilnya adalah (13598011, Amir, Matematika Diskrit, A) dan (13598025, Hamdan, Matematika Diskrit, B)
3.1.3.2 Proyeksi
Operasi proyeksi memilih kolom tertentu dari suatu tabel. Jika ada beberapa baris yang sama nilainya, maka hanya
diambil satu kali. Operator untuk menuliskan proyeksi adalah
Misalkan untuk relasi MHS kita ingin menampilkan daftar nama mahasiswa, mata kuliah, dan Nilai. Operasi
proyeksinya adalah Nama, MatKul, Nilai (MHS)
Maka hasilnya adalah (silakan diisi)
…………………………………………………………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………………………………………………………….
3.1.3.3 Join
Operasi join menggabungkan dua buah tabel menjadi satu bila kedua tabel mempunyai atribut yang sama.
Operator untuk menuliskan Join adalah
Contoh 7
Misalkan relasi MHS1 dinyatakan dengan Tabel A dan relasi MHS2 dinyatakan dengan Tabel B
Operasi join NIM, Nama(MHS1, MHS2)
Tabel A Tabel B
NIM Nama JK
13598001 Hananto L
13598002 Guntur L
13598004 Heidi W
13598006 Harman L
13598007 Karim L
Tabel B
NIM Nama MatKul Nilai
13598001 Hananto Algoritma A
13598001 Hananto Basisdata B
13598004 Heidi Kalkulus B
13598006 Harman Teori Bahasa C
13598006 Harman Agama A
13598009 Junaidi Statisitik B
13598010 Farizka Otomata C
4
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]
3.2 Kardinalitas
Derajat/kardinalitas relasi mewakili hubungan maksimum yang terjadi antara satu entitas (dalam hal ini bisa
dikatakan sebagi obyek) terhadap entitas lain. Disamping itu, ada pula yang disebut derajat relasi minimum, yang
menunjukkan hubungan minimum yang boleh terjadi dalam sebuah relasi antar entitas.
Kardinalitas Relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan
entitas lain.
Macam Kardinalitas ada 4 (empat) yaitu
Satu ke Satu (One to One)
Satu ke Banyak (One to Many)
Banyak ke Satu (Many to One)
Banyak ke Banyak (Many to Many)
5
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]
6
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]
Setiap dosen dapat mengajar lebih dari satu mata kuliah, sedangkan setiap mata kuliah diajar paling banyak satu
dosen.
Setiap mahasiswa dapat mempelajari banyak mata kuliah dan setiap mata kuliah dapat dipelajari oleh banyak
mahasiswa.
Sebagai catatan penting adalah Penentuan derajat relasi tergantung dari aturan bisnis (business rule) yang ada ada
di perusahaan/instansi.
Untuk memperjelas pemahaman kita terhadap 3 macam key di atas, perhatikan contohnya pada tabel mata_kuliah di
bawah ini
7
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]
Contoh 14
DU-001 English 2 2
DU-002 Kalkulus 1 3
IF-001 Algoritma 1 3
IF-002 Database 2 3
TE-001 Elektronika 4 3
Candidate key dari tabel mata_kuliah dipilih dari super key yang sudah ada. Super key yang akan menjadi candidate key
adalah super key yang tidak mengandung super key lain di dalamnya.
Perhatikan 5 super key yang sudah kita peroleh dari analisis sebelumnya:
1. (kode_mk)
8
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]
2. (nama_mk)
3. (kode_mk,nama_mk,semester)
4. (kode_mk,nama_mk, sks)
5. (kode_mk,nama_mk, semester, jml_temu)
Super key yang hanya terdiri dari satu atribut data pasti akan menjadi candidate key sebab tidak mungkin
mengandung super key yang lain. Oleh karena itu super key pada poin 1 dan 2 otomatis menjadi candidate key.
Super key pada poin 3 tidak menjadi candidate key sebab dalam kombinasi (kode_mk, nama_mk, semester) terdapat
super key yang lain yaitu (kode_mk). Dengan demikian, poin 4 dan 5 juga bukan candidate key.
Dari analisis ini, kita memperoleh 2 buah candidate key yaitu (kode_mk) dan (nama_mk). Salah satu dari beberapa
candidate key ini akan dipilih untuk digunakan dalam DBMS sebagai primary key. Ada beberapa pertimbangan untuk
memilih primary key, di antaranya adalah jaminan keunikan yang lebih kuat, representasi yang lebih baik dan lain-lain.
1. Jika kita ingin menampilkan daftar mahasiswa dari relasi MHS yang mendapatkan nilai A, tentukan operasi
seleksi dan hasilnya!
2. Jika kita ingin menampilkan mahasiswa dengan NIM = 13598025, tentukan operasi seleksi dan hasilnya!
3. Misalkan untuk relasi MHS kita ingin menampilkan daftar NIM dan Nama, tentukan Operasi proyeksinya dan
Tabelnya!
4. Misalkan untuk relasi MHS kita ingin menampilkan daftar NIM, Mata Kuliah dan Nilai, tentukan Operasi
proyeksinya dan Tabelnya!
1. Buatlah sebuah contoh sederhana database relasional antara Dokter dan Pasien dalam sebuah Rumah Sakit,
dimana relasinya adalah dokter mengobati pasien, Gambarkan dokter dan pasien sebagai entitas yang memiliki
berbagai atribut kemudian tentukan jenis kardinalitasnya!
2. Tentukan Super key, candidate Key dan primary key untuk tabel berikut ini:
9
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]
10