Anda di halaman 1dari 10

EXERCISE WORKBOOK

[DU1023]-[2011/2012]#[7]

Nama MK : Matematika Diskrit


Disampaikan pada minggu ke-7
E
Program Studi Teknik Komputer – Politeknik Telkom Bandung
Jl. Telekomunikasi Terusan Buah Batu, Bandung, 40254

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]

Nama MK : Matematika Diskrit


Disampaikan pada minggu ke-7
E
Program Studi Teknik Komputer – Politeknik Telkom Bandung
Jl. Telekomunikasi Terusan Buah Batu, Bandung, 40254

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

MHS = { (13598011, Amir, Matematika Diskrit, A),


(13598011, Amir, Arsitektur Komputer, B),
(13598014, Santi, Arsitektur Komputer, D),
(13598015, Irwan, Algoritma, C),
(13598015, Irwan, Struktur Data C),
(13598015, Irwan, Arsitektur Komputer, B),
(13598019, Ahmad, Algoritma, E),
(13598021, Cecep, Algoritma, A),
(13598021, Cecep, Arsitektur Komputer, B),
(13598025, Hamdan, Matematika Diskrit, B),
(13598025, Hamdan, Algoritma, A, B),
(13598025, Hamdan, Struktur Data, C),
(13598025, Hamdan, Ars. Komputer, B)
}
Contoh 3
Relasi MHS tersebut dapat ditulis dalam bentuk Tabel:
NIM Nama MatKul Nilai
13598011 Amir Matematika Diskrit A
13598011 Amir Arsitektur Komputer B
13598014 Santi Algoritma D
13598015 Irwan Algoritma C
13598015 Irwan Struktur Data C
13598015 Irwan Arsitektur Komputer B
13598019 Ahmad Algoritma E
13598021 Cecep Algoritma B
13598021 Cecep Arsitektur Komputer B
13598025 Hamdan Matematika Diskrit B
13598025 Hamdan Algoritma A
13598025 Hamdan Struktur Data C
13598025 Hamdan Arsitektur Komputer B

2
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]

Nama MK : Matematika Diskrit


Disampaikan pada minggu ke-7
E
Program Studi Teknik Komputer – Politeknik Telkom Bandung
Jl. Telekomunikasi Terusan Buah Batu, Bandung, 40254

3.1.2 basis Data & Relasi Basis Data


3.1.2.1 Basis Data
Basisdata (database) adalah kumpulan tabel. Salah satu model basisdata adalah model basisdata relasional
(relational database). Model basisdata ini didasarkan pada konsep relasi n-ary. Pada basisdata relasional, satu
tabel menyatakan satu relasi. Setiap kolom pada tabel disebut atribut. Daerah asal dari atribut adalah himpunan
tempat semua anggota atribut tersebut berada. Setiap tabel pada basisdata diimplementasikan secara fisik sebagai
sebuah file.
Contoh : mahasiswa
NPM TELP
MAHASISWA
TGL_LHR NPM
NAMA Nama
Alamat
ALAMAT HOBBY
Hobby
Tgl Lahir
Telp

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.2.2 Relasi Basis Data


Satu baris data pada tabel menyatakan sebuah record, dan setiap atribut menyatakan sebuah field. Secara fisik
basis data adalah kumpulan file, sedangkan file adalah kumpulan record, setiap record terdiri atas sejumlah field.
Atribut khusus pada tabel yang mengidentifikasikan secara unik elemen relasi disebut kunci (key).
Contoh 4: Pada diagram diatas pada entitas mahasiswa kuncinya adalah NPM , atribut tersebut unik karena tidak
mungkin mahasiswa yang memiliki NPM yang sama

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]

Nama MK : Matematika Diskrit


Disampaikan pada minggu ke-7
E
Program Studi Teknik Komputer – Politeknik Telkom Bandung
Jl. Telekomunikasi Terusan Buah Batu, Bandung, 40254

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

Maka Hasil Operasi Join-nya adalah

4
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]

Nama MK : Matematika Diskrit


Disampaikan pada minggu ke-7
E
Program Studi Teknik Komputer – Politeknik Telkom Bandung
Jl. Telekomunikasi Terusan Buah Batu, Bandung, 40254

NIM Nama JK MatKul Nilai


13598001 Hananto L Algoritma A
13598001 Hananto L Basisdata B
13598004 Heidi W Kalkulus I B
13598006 Harman L Teori Bahasa C
13598006 Harman L Agama A

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)

3.2.1 Kardinalitas Satu ke satu (One to One)


Yang berarti setiap entitas pada himpunan entitas A berelasi dengan paling banyak dengan satu entitas pada
himpunan entitas B, dan begitu sebaliknya setiap entitas pada himpunan entitas B berelasi paling banyak satu
entitas pada himpunan entitas A.
Contoh 8

3.2.2 Kardinalitas Satu ke Banyak (One to Many)


Yang berarti setiap entitas pada himpunan entitas A berelasi dengan banyak entitas pada himpunan entitas B,
tetapi tidak sebaliknya, dimana setiap himpunan entitas pada himpunan entitas B berelasi paling banyak dengan
satu entitas pada himpunan entitas A.
Contoh 9:

5
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]

Nama MK : Matematika Diskrit


Disampaikan pada minggu ke-7
E
Program Studi Teknik Komputer – Politeknik Telkom Bandung
Jl. Telekomunikasi Terusan Buah Batu, Bandung, 40254

3.2.3 Kardinalitas Banyak ke Satu (Many to One)


Yang berarti setiap entitas pada himpunan entitas A berelasi paling banyak dengan satu entitas pada himpunan
entitas B, tetapi tidak sebaliknya, dimana setiap himpunan entitas pada himpunan entitas B berelasi banyak entitas
pada himpunan entitas A
Contoh 10:

3.2.4 Kardinalitas Banyak ke Banyak ( Many to Many)


Yang berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan
entitas B, dan demikian juga sebaliknya, dimana setiap entitas pada pada himpunen entitas B berhubungan banyak
entitas pada himpunan entitas A.
Contoh 11:

Berikut ini adalah penerapan kardinalitas dalam relasi Database


Contoh 12 implementasi Relasi One to Many

6
EXERCISE WORKBOOK
[DU1023]-[2011/2012]#[7]

Nama MK : Matematika Diskrit


Disampaikan pada minggu ke-7
E
Program Studi Teknik Komputer – Politeknik Telkom Bandung
Jl. Telekomunikasi Terusan Buah Batu, Bandung, 40254

Setiap dosen dapat mengajar lebih dari satu mata kuliah, sedangkan setiap mata kuliah diajar paling banyak satu
dosen.

Contoh 13: Implementasi Relasi Many to Many

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.

3.3 Menentukan Key pada relasi


Konsep tentang key adalah konsep yang penting untuk memahami keterkaitan antar atribut data dalam tabel dan
akan sangat berguna dalam proses normalisasi tabel (dalam pembuatan tabel untuk database terkadang tabel yang
dibuat tidak normal; akan dipelajari lebih lanjut di Perancangan Database). Dalam setiap tabel, terdapat 3 macam
key:
a) Super key
Super key adalah satu atribut atau gabungan atribut (kolom) pada tabel yang dapat membedakan semua baris
secara unik.
b) Candidate key
Candidate key disebut juga dengan minimal super key, yaitu super key yang tidak mengandung super key yang lain.
Setiap candidate key pasti merupakan super key, namun tidak semua super key akan menjadi candidate key.
c) Primary key
Primary key adalah salah satu candidate key yang dipilih (dengan berbagai pertimbangan) untuk digunakan dalam
DBMS (Data Base Management System). Tiap tabel hanya memiliki 1 primary key, namun primary key tersebut
bisa saja dibentuk dari beberapa atribut (kolom).

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]

Nama MK : Matematika Diskrit


Disampaikan pada minggu ke-7
E
Program Studi Teknik Komputer – Politeknik Telkom Bandung
Jl. Telekomunikasi Terusan Buah Batu, Bandung, 40254

Contoh 14

Tabel Mata Kuliah


Kode_MK Nama_MK Semester SKS

DU-001 English 2 2

DU-002 Kalkulus 1 3

IF-001 Algoritma 1 3

IF-002 Database 2 3

IF-003 Artificial Intelligence 5 2

TE-001 Elektronika 4 3

Beberapa super key dari tabel di atas adalah:


1. (kode_mk)
Dari 6 baris data yang ada pada tabel di atas tak ada satupun yang memiliki kode_mk yang sama.
2. (nama_mk)
Demikian pula dengan nama_mk, masing-masing baris data memiliki nama_mk yang unik. Tidak ada satupun
baris data yang memiliki kolom nama_mk dengan nilai yang sama persis.
3. (kode_mk,nama_mk,semester)
Walaupun beberapa baris data memiliki kolom semester dengan nilai yang sama (misalnya baris 1&4, baris 2&3)
namun tidak ada satupun baris data yang memiliki kombinasi kode_mk, nama_mk dan semester yang sama
persis.
4. (kode_mk,nama_mk, sks)
Kombinasi kode_mk, nama_mk dan sks juga digolongkan sebagai super key dengan alasan yang kurang lebih
sama dengan poin 3.
5. (kode_mk,nama_mk, semester, jml_temu)
Kombinasi kode_mk, nama_mk, semester dan jml_temu juga digolongkan sebagai super key dengan alasan yang
kurang lebih sama dengan poin 3 dan 4.
Sedangkan yang bukan super key adalah:
1. (sks)
Perhatikan bahwa kolom sks tidak bisa membedakan baris data secara unik, contohnya baris data 2,3, 4 dan 6
sama-sama memiliki kolom sks bernilai 3.
2. (semester)
Kolom semester juga tidak bersifat unik, contohnya baris data 1 dan 4 sama-sama memiliki kolom semester
bernilai 2
3. (semester, sks)
Kombinasi semester dan sks juga tidak membedakan tiap baris data secara unik, contohnya baris data ke 2 dan
3 sama-sama memiliki kolom semester bernilai 1 dan sama-sama memiliki kolom sks bernilai 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]

Nama MK : Matematika Diskrit


Disampaikan pada minggu ke-7
E
Program Studi Teknik Komputer – Politeknik Telkom Bandung
Jl. Telekomunikasi Terusan Buah Batu, Bandung, 40254

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.

3.2 BAGIAN A (INDIVIDU)


Perhatikan tabel relasi MHS berikut ini:
NIM Nama MatKul Nilai
13598011 Amir Matematika Diskrit A
13598011 Amir Arsitektur Komputer B
13598014 Santi Algoritma D
13598015 Irwan Algoritma C
13598015 Irwan Struktur Data C
13598015 Irwan Arsitektur Komputer B
13598019 Ahmad Algoritma E
13598021 Cecep Algoritma B
13598021 Cecep Arsitektur Komputer B
13598025 Hamdan Matematika Diskrit B
13598025 Hamdan Algoritma A
13598025 Hamdan Struktur Data C
13598025 Hamdan Arsitektur Komputer B

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!

3.3 BAGIAN B (KELOMPOK)

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]

Nama MK : Matematika Diskrit


Disampaikan pada minggu ke-7
E
Program Studi Teknik Komputer – Politeknik Telkom Bandung
Jl. Telekomunikasi Terusan Buah Batu, Bandung, 40254

NIM Nama_Mhs Kd_Jur Nama_Jur Kode_MK Nama_MK SKS Nilai

1-01 Tukimin TE Elektro TE-001 Elektronika 3 A

1-01 Tukimin TE Elektro DU-001 English 2 A

2-01 Jamilah IF Informatika IF-001 Algoritma 3 B

2-01 Jamilah IF Informatika DU-001 English 2 C

2-02 Maemunah IF Informatika IF-002 Database 2 A

10

Anda mungkin juga menyukai