bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web...

33
BASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya ; Terminologi dari mode data relasional diambil berdasarkan konsep matematika yaitu relasi, dimana secara fisik di gambarkan sebagai suatu tabel. MAHASISWA NPM Nama Alamat Kota Tgl_lahir JK TELP 50499101 Andini Putri Jl. PD 2 No 2 Depok 10-09-1981 P 0217705452 50499123 Putro Kusumo Jl. Kemun 3 Bogor 15-05-1981 L 0251251532 50499001 Renjani Jl.Sawo 4 Jakart a 02-02-1980 P 0218758745 50499025 Komang Jl.Mentawai 1 Jakart a 30-10-1981 L 0217885458 50499451 M.Sufi Jl. PK 1 No.6 Depok 25-11-1980 L 0217775875 MKUL Kd_mk Mt_kuliah SKS KD045201 Matematika 1 2 KU000202 P.Kewiraan 2 KK045326 Sistem Penunjang Keputusan 3 KK045337 Sistem Terdistribusi 3 KK045305 Teori Bahasa dan Automata 3 KK045417 Konsep Sistem Informasi 4 KK045210 Pengantar Basis Data 2 KK045318 Sistem Basis Data 3 KRS NPM Kd_mk Mt_kuliah SKS Kelas Semeste r 50499025 KD045201 Matematika 1 2 1IA01 1 50499025 KU000202 P.Kewiraan 2 2IA10 3 50499101 KK045326 Sistem Penunjang Keputusan 3 4IA05 7 Model Relasional / Irma RR Halaman 29

Transcript of bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web...

Page 1: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

BASIS DATA RELASIONAL

I. Pengertian Basis Data Relasional

Tabel dan Keterhubungannya ;

Terminologi dari mode data relasional diambil berdasarkan konsep matematika yaitu relasi, dimana secara fisik di gambarkan sebagai suatu tabel.

MAHASISWANPM Nama Alamat Kota Tgl_lahir JK TELP

50499101 Andini Putri Jl. PD 2 No 2 Depok 10-09-1981 P 021770545250499123 Putro

KusumoJl. Kemun 3 Bogor 15-05-1981 L 0251251532

50499001 Renjani Jl.Sawo 4 Jakarta 02-02-1980 P 021875874550499025 Komang Jl.Mentawai 1 Jakarta 30-10-1981 L 021788545850499451 M.Sufi Jl. PK 1 No.6 Depok 25-11-1980 L 0217775875

MKULKd_mk Mt_kuliah SKS

KD045201 Matematika 1 2KU000202 P.Kewiraan 2KK045326 Sistem Penunjang

Keputusan3

KK045337 Sistem Terdistribusi 3KK045305 Teori Bahasa dan

Automata3

KK045417 Konsep Sistem Informasi 4KK045210 Pengantar Basis Data 2KK045318 Sistem Basis Data 3

KRSNPM Kd_mk Mt_kuliah SKS Kelas Semeste

r50499025 KD04520

1Matematika 1 2 1IA01 1

50499025 KU000202

P.Kewiraan 2 2IA10 3

50499101 KK045326 Sistem Penunjang Keputusan

3 4IA05 7

50499101 KK045337 Sistem Terdistribusi 3 4IA05 750499101 KK045305 Teori Bahasa dan Automata 3 4IA05 750499123 KK045417 Konsep Sistem Informasi 4 1IA04 150499451 KK045210 Pengantar Basis Data 2 3IA11 550499451 KK045337 Sistem Terdistribusi 3 4IA01 750499451 KK045305 Teori Bahasa dan Automata 3 4IA01 750499451 KK045417 Konsep Sistem Informasi 4 1IA01 1

DOSEN

Model Relasional / Irma RR Halaman 29

Page 2: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Kd_dosen

Nama Alamat JK TELP

09738 Kurniawan Jl. Kenanga 2 Depok L 021775747409536 Fristy Jl. Andalan 3 Jakarta P 021875652500058 Gunawarman Jl. Pasir Putih 1 Jakarta L 021855578509825 Lundi Jl. Gagak 6 Bogor L 025122545209689 Qiqan Jl. PD 3 Depok P 021770545009143 Windi Jl. Salak 45 Depok P 021777587500198 Vien Jl. Merapi 12 Jakarta P 0218565203

NilaiNPM Kd_mk Mt_kuliah Mi

dUas

Nilai Kd_dosen

50499025 KD045201

Matematika 1 30 90 C 09738

50499025 KU000202

P.Kewiraan 50 80 C 09536

50499101 KK045326 Sistem Penunjang Keputusan

56 70 C 00058

50499101 KK045337 Sistem Terdistribusi 96 75 A 0982550499101 KK045305 Teori Bahasa dan

Automata56 10

0B 09689

50499123 KK045417 Konsep Sistem Informasi 87 89 A 0914350499451 KK045210 Pengantar Basis Data 84 89 A 0019850499451 KK045337 Sistem Terdistribusi 85 90 A 0982550499451 KK045305 Teori Bahasa dan

Automata60 90 B 09689

50499451 KK045417 Konsep Sistem Informasi 72 90 A 09143

Struktur data relasionalnya :1. Relasi : Sebuah tabel yang terdiri dari beberapa kolom dan

beberapa baris.RDBMS membutuhkan database yang disusun oleh pengguna sebagai suatu tabel. Dimana hanya struktur logikal dari database .

2. Atribut : Kolom pada sebuah relasi ( Field )Pada model relasional . relasi digunakan untuk menyimpan informasi mengenai obyek untuk mewakili dari database yang digambarkan tabel dua dimensi, dimana baris dari tabel di isi dengan record data secara keseluruhan dan kolom nya berisi obyek dari database yang disebut juga atribut.

3. Tupel : Baris pada sebuah relasi ( Record )

4. Domain : Kumpulan nilai yang valid untuk satu atau lebih atributSetiap atribut di dalam suatu relasi di definisikan oleh suatu domain. Domain mungkin berbeda di setiap atribut ; satu, dua ataupun tiga atribut dapat di definisikan di dalam satu domain.

Model Relasional / Irma RR Halaman 30

Page 3: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Domain di dalam suatu relasi adalah penting sehingga pada saat pengguna mendefinisikan di pusat arti dan nilai atribut di suatu sumber dapat di raih. Informasi yang lebih banyak dapat di ambil dan pengeksekusian dari operasional relasi dan kesalahan dalam pengoperasian dapat di atasi.

5. Derajat : Jumlah atribut key dalam sebuah relasiPada gambar di bawah, setiap baris di dalam suatu tabel terdapat enam atribut dengan 2 atribut key . Suatu relasi hanya dengan satu atribut key hanya mempunyai satu derajat yang disebut dengan unary, Suatu relasi yang berhubungan dengan dua atribut key hanya mempunyai dua derajat yang disebut dengan binary, Suatu relasi yang berhubungan dengan tiga atribut mempunyai tiga derajat yang disebut dengan ternary.

6. Cardinality : Jumlah tupel dalam sebuah relasi

AttributKRS

NPM Kd_mk Mt_kuliah SKS Kelas Semester

50499025 KD045201

Matematika 1 2 1IA01 1

50499025 KU000202

P.Kewiraan 2 2IA10 3

50499101 KK045326 Sistem Penunjang Keputusan

3 4IA05 7

50499101 KK045337 Sistem Terdistribusi 3 4IA05 750499101 KK045305 Teori Bahasa dan Automata 3 4IA05 750499123 KK045417 Konsep Sistem Informasi 4 1IA04 150499451 KK045210 Pengantar Basis Data 2 3IA11 550499451 KK045337 Sistem Terdistribusi 3 4IA01 750499451 KK045305 Teori Bahasa dan Automata 3 4IA01 750499451 KK045417 Konsep Sistem Informasi 4 1IA01 1

DegreePrimary Key

Keterangan : Tabel dan Keterhubungannya Tabel KRS terdiri dari NPM dan Kd_mk sebagai kunci elemen data,

bersama-sama dengan 4 field lainnya yaitu: mt_kuliah, SKS, Kelas dan semester membentuk entitas KRS.

Tabel KRS merupakan tabel yang dihasilkan dari relasi antara tabel Mahasiswa dan tabel MKUL membentuk tabel KRS atau entitas KRS

Kedua tabel tsb berelasi membentuk satu basis data model relasional.

II. Keuntungan Basis Data Relasional :1. Bentuknya Sederhana

Model Relasional / Irma RR Halaman 31

Page 4: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

2. Mudah melakukan berbagai operasi data

III. Relasional Basis Data

Relation schema : Sebuah relasi yang diikuti oleh himpunan atribut dan pasangan nama domain dan merupakan kumpulan relasi–relasi yang ternormalisasil Relational Keys

Superkey : satu atribut / kumpulan atribut yang secara unik mengidentifikasi sebuah tupel di dalam relasi

Candidate key : atribut di dalam relasi yang biasanya mempunyai nilai

unik.(seperti : NPM, NIP, NAMA,PART_NO, dsb.).Primary key : candidate key yang dipilih untuk

mengidentifikasikan tupel secara unik dalam relasi

Alternate Key : candidat key yang tidak dipilih sebagai primary key.

Foreign Key : atribut dengan domain yang sama yang menjadi kunci

utama pada sebuah relasi tetapi pada relasi lain atribut

tsb hanya sebagai atribut biasa.contoh :

KRSNPM Kd_mk Mt_kuliah SKS Kelas Semeste

r50499025 KD04520

1Matematika 1 2 1IA01 1

50499025 KU000202

P.Kewiraan 2 2IA10 3

50499101 KK045326 Sistem Penunjang Keputusan

3 4IA05 7

Sifat-Sifat Relasi

1. Tidak ada tuple yang ganda.2. Tuple-tuple tidak terurut.3. Atribut-atribut tidak terurut.4. Semua nilai atribut adalah atomik (artinya antara atribut yang

satu dengan yang lainnya tidak sama).

Tingkatan Dalam Relasi Relasi dari tingkat pertama disebut UNARY.

Sebuah relasi yang menghubungkan dengan entitas itu sendiri yang berpartisipasi dengan tugas yang berbeda.

Model Relasional / Irma RR Halaman 32

Super Key

Primary Key Alternate

Key

Candidate Key

Dosen Koordinir

Page 5: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Relasi dari tingkat kedua disebut BINARY.

Sebuah relasi yang terdiri dari dua buah entitas yang saling berhubunganContoh :

Relasi dari tingkat ketiga disebut TERNARY.Sebuah relasi yang menghubungkan tiga buah entitas

Relasi dari tingkat n disebut n-ary.Sebuah relasi yang menghubungkan lebih dari tiga buah entitas

IV. INTEGRITY / Kesatuan Data

Integrity di dalam istilah basis data berarti memeriksa keakuratan dan validasi data.

Batasan Kesatuan DataMemberikan suatu sarana yang memungkinkan pengubahan database oleh pemakai berwenang sehingga tidak akan menyebabkan data inkonsisten.

Batasan kesatuan data ini berisi aturan-aturan atau batasan-batasan untuk tujuan terlaksananya Kesatuan data.Dengan demikian batasan ini melindungi database dari kerusakan.

Aturan Kesatuan Data (pada basis data Relasional)

1. Aturan Null Nilai suatu atribut yang tidak diketahui atau tidak cocok untuk baris ( tuple ) tersebut atau dapat di katakan belum ada nilai yang masuk . Null tidak sama dengan nilai kosong (0) atau nilai spasi, tetapi null mewakili sebuah nilai yang belum terisi . Oleh karenanya null di berlakukan berbeda dengan nilai lainnya.

Model Relasional / Irma RR Halaman 33

Mahasiswa

Ambil MKUL

Dosen Ajar MKUL

Ruang

Page 6: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

2. Aturan Entity (Rule 1)Tidak ada satu komponen dari primary key yang bernilai kosong (null). Latar belakang :- Semua entiti harus dapat dibedakan- Harus memiliki identifikasi unik- Primary Key merupakan identitas unik tsb- Suatu relasi dapat mengandung field referensi terhadap relasi lain.

3. Aturan Referensi (Rule 2) Suatu domain dapat dipakai sebagai kunci primer bila merupakan

atribut tunggal pada domain yang bersangkutan ( Jika sebuah kunci tamu muncul di suatu relasi, maka kunci tamu tersebut harus sesuai dengan entitas dimana kunci tersebut berada atau di biarkan bernilai null pada relasi tersebut).

Batasan-batasan lainnya.Digunakan untuk tujuan proteksi dan integritas data, misalnya untuk validasi data masuk yang salah.

V. Bahasa Pada Basis Data Relasional

Menggunakan Bahasa query pernyataan yang diajukan untuk mengambil informasi.Terbagi dua :1. Bahasa Formal

Bahasa query yang diterjemahkan dengan menggunakan simbol matematis

Contoh :Aljabar relasionalKalkulus relasional

l Aljabar RelasionalBahasa query prosedural ; pemakai menspesifikasikan data apa yang dibutuhkan dan bagaimana untuk mendapatkannya.

l Kalkulus Relasional Bahasa query non prosedural ; pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk mendapatkannya.

Terbagi dua :1. Kalkulus relasional tupel2. Kalkulus relasional domain

2. Bahasa Komersial

Model Relasional / Irma RR Halaman 34

Page 7: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Bahasa query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai lebih mudah menggunakannya ( user friendly ).Contoh :

QUEL ; berbasis pada bahasa kalkulus relasional QBE ; berbasis pada bahasa kalkulus relasional SQL ; berbasis pada bahasa kalkulus relasional dan aljabar relasional

BAHASA QUERY FORMAL

V.1 ALJABAR RELASIONAL

OPERASI – OPERASI DASAR SELECT PROJECT

Model Relasional / Irma RR Halaman 35

Bahasa Query Formal

Prosedur

Aljabar Relasional

Non Prosedur

Kalkulus Relasional

Bahasa Query Komersial

SQL

TUPEL (QUEL) DOMAIN

( QBE )

Page 8: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

CARTESIAN PRODUCT UNION SET DIFFERENCE

OPERASI – OPERASI TAMBAHAN NATURAL JOIN THETA JOIN INTERSECTION DIVISION

OPERASI – OPERASI DASAR

1. SELECT/ RESTRICT (s)Pada operasi ini hanya dapat digunakan untuk relasi tunggal R dan ekstraksi (pengambilan) tuple dari suatu relasi hanya yang sesuai dengan kondisi yang diinginkan. Dalam operasi select akan melibatkan :

a. Operand : konstanta atau komponen bilanganb. Operator pembanding aritmetik : < , = , > , £ , ¹ , ³c. Operator logikal : and (Ù) , or (Ú) , not (~)

s R adalah semua tuple yang diekstrak dari relasi R yang memenuhi formula F.

IlustrasiR

MAHASISWANPM Nama Alamat Kota Tgl_lahir JK TELP

50499101 Andini Putri Jl. PD 2 No 2 Depok 10-09-1981 P 021770545250499123 Putro

KusumoJl. Kemun 3 Bogor 15-05-1981 L 0251251532

50499001 Renjani Jl.Sawo 4 Jakarta 02-02-1980 P 021875874550499025 Komang Jl.Mentawai 1 Jakarta 30-10-1981 L 0217885458750499451 M.Sufi Jl. PK 1 No.6 Depok 25-11-1980 L 0217775875

MKULKd_mk Mt_kuliah SKS

KD045201 Matematika 1 2KU000202 P.Kewiraan 2

Model Relasional / Irma RR Halaman 36

Tupel – tupel hasil operasi SELECT

Page 9: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

KK045326 Sistem Penunjang Keputusan

3

KK045337 Sistem Terdistribusi 3KK045305 Teori Bahasa dan

Automata3

KK045417 Konsep Sistem Informasi 4KK045210 Pengantar Basis Data 2KK045318 Sistem Basis Data 3

KRSNPM Kd_mk Mt_kuliah SKS Kelas Semeste

r50499025 KD04520

1Matematika 1 2 1IA01 1

50499025 KU000202

P.Kewiraan 2 2IA10 3

50499101 KK045326 Sistem Penunjang Keputusan

3 4IA05 7

50499101 KK045337 Sistem Terdistribusi 3 4IA05 750499101 KK045305 Teori Bahasa dan Automata 3 4IA05 750499123 KK045417 Konsep Sistem Informasi 4 1IA04 150499451 KK045210 Pengantar Basis Data 2 3IA11 550499451 KK045337 Sistem Terdistribusi 3 4IA01 750499451 KK045305 Teori Bahasa dan Automata 3 4IA01 750499451 KK045417 Konsep Sistem Informasi 4 1IA01 1

Contoh :Skema relasi Mahasiswa (NPM,Nama,Alamat,JK,Telp)1. Di cari informasi mengenai mahasiswa yang mempunyai

NPM=’50499123’s NPM=’50499123’ (Mahasiswa)

2. Di cari informasi mengenai Mahasiswa yang tinggal di daerah=’Bogor’

s Kota=’Bogor’ (Mahasiswa)

2. PROJECT ()

Pada operasi ini hanya dapat digunakan untuk relasi tunggal R dan ekstraksi (pengambilan) atribut – atribut dari suatu relasi hanya yang sesuai dengan kondisi yang diinginkan dan menghapus data yang ganda.

Ilustrasi

Model Relasional / Irma RR Halaman 37

Tupel – tupel hasil operasi PROJECT

Page 10: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Contoh :1. Di cari informasi mengenai NPM,Nama,Alamat,Kota dan Telp

NPM,Alamat,Kota,Telp (Mahasiswa)

2.Di cari informasi mengenai NPM dan Kelas yang mengambil mata kuliah

Sistem Penunjang Keputusan NPM,Kelas (s mt_kuliah = ‘Sistem Penunjang Keputusan (KRS) )

3. CARTESIAN PRODUCT (X)Membentuk suatu relasi dari dua relasi yang terdiri dari kombinasi tupel-tupel yang mungkin.Simbol : X

Ilustrasi R S RXS

a 1 a 1b 2 a 2

3 a 3b 1b 2b 3

Contoh :Skema relasi Mahasiswa (NPM,Nama,Alamat,Kota,Tgl_lahir,JK)

Skema relasi MKUL(Kd_mk,Mt_kuliah,SKS,Semester)Kombinasikan data dari relasi Mahasiswa dan KRSNPM,Nama(Mahasiswa) X Kd_mk,Mt_kuliah(MKUL)

NPM Nama Kd_mk Mt_kuliah50499101 Andini Putri KD045201 Matematika 150499101 Andini Putri KU000202 P.Kewiraan50499001 Andini Putri KK045326 Sistem Penunjang

Keputusan50499101 Andini Putri KK045337 Sistem Terdistribusi50499101 Andini Putri KK045305 Teori Bahasa dan Automata50499001 Andini Putri KK045417 Konsep Sistem Informasi50499001 Andini Putri KK045210 Pengantar Basis Data50499123 Putro Kusumo KD045201 Matematika 150499123 Putro Kusumo KU000202 P.Kewiraan50499123 Putro Kusumo KK045326 Sistem Penunjang

Keputusan50499123 Putro Kusumo KK045337 Sistem Terdistribusi50499123 Putro Kusumo KK045305 Teori Bahasa dan Automata50499123 Putro Kusumo KK045417 Konsep Sistem Informasi50499123 Putro Kusumo KK045210 Pengantar Basis Data… … … …

Sampai data berjumlah 42 data (6 x 7)

Model Relasional / Irma RR Halaman 38

Page 11: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

4. UNION ( U ) Membentuk suatu relasi yang terdiri dari tupel-tupel yang berada pada

salah satu relasi atau pada kedua relasi, dengan syarat : Ada relasi R dan S, maka jumlah atribut pada kedua relasi tersebut

harus sama Domain dari atribut ke i dari R harus sama dengan domain dari

atribut ke i dari S. Simbol :

Contoh query :Skema relasi KRS (NPM,Kd_mk,mt_kuliah,SKS,Kelas,Semester)

Skema relasi MKUL(kd_mk,mt_kuliah,SKS,Semester)

Tampilkan semua mata kuliah yang berada pada relasi KRS dan MKUL

Mt_kuliah(KRS) mt_kuliah(MKUL)

Mt_kuliahMatematika 1P.KewiraanSistem Penunjang KeputusanSistem TerdistribusiTeori Bahasa dan AutomataKonsep Sistem InformasiPengantar Basis DataSistem TerdistribusiTeori Bahasa dan AutomataKonsep Sistem InformasiMatematika 1P.KewiraanSistem Penunjang KeputusanSistem TerdistribusiTeori Bahasa dan AutomataKonsep Sistem InformasiPengantar Basis DataSistem Basis Data

5. Set Difference ( - )Membangun suatu relasi yang terdiri atas semua tuple yang ada pada relasi pertama dan tidak berada pada relasi keduanya atau tidak pada keduannya.Ditulis R - S.

Model Relasional / Irma RR Halaman 39

Page 12: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Contoh query :Skema relasi KRS (NPM,Kd_mk,mt_kuliah,SKS,Kelas,Semester)

Skema relasi MKUL(kd_mk,mt_kuliah,SKS,Semester) Dicari semua mt_kuliah dimana mt_kuliah tersebut ada pada MKUL

tetapi tidak ada pada KRS mt_kuliah(MKUL) - mt_kuliah(KRS)

Mt_kuliahSistem Basis Data

OPERASI – OPERASI TAMBAHAN

JOIN Membangun suatu relasi dari dua relasi yang terdiri dari semua kemungkinan kombinasi tuple dari masing-masing dan setiap pasangan kombinasi tuple memenuhi kondisi yang ditentukan.

Jenis-jenis join adalah - Theta join- Equi-join- Natural join- Outer join- Semi join

DOSENKd_dose

nNama Alamat JK TELP

09738 Kurniawan Jl. Kenanga 2 Depok L 021775747409536 Fristy Jl. Andalan 3 Jakarta P 021875652500058 Gunawarman Jl. Pasir Putih 1 Jakarta L 021855578509825 Lundi Jl. Gagak 6 Bogor L 025122545209689 Qiqan Jl. PD 3 Depok P 021770545209143 Windi Jl. Salak 45 Depok P 021777587500198 Vien Jl. Merapi 12 Jakarta P 0218565203

NilaiNPM Kd_mk Mt_kuliah Mi Ua Nilai Kd_dose

Model Relasional / Irma RR Halaman 40

Page 13: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

d s n50499025 KD04520

1Matematika 1 30 90 C 09738

50499025 KU000202

P.Kewiraan 50 80 C 09536

50499101 KK045326 Sistem Penunjang Keputusan

56 70 C 00058

50499101 KK045337 Sistem Terdistribusi 96 75 A 0982550499101 KK045305 Teori Bahasa dan

Automata56 10

0B 09689

50499123 KK045417 Konsep Sistem Informasi 87 89 A 0914350499451 KK045210 Pengantar Basis Data 84 89 A 0019850499451 KK045337 Sistem Terdistribusi 85 90 A 0982550499451 KK045305 Teori Bahasa dan

Automata60 90 B 09689

50499451 KK045417 Konsep Sistem Informasi 72 90 A 09143

1. Natural Join ( ) Membentuk suatu relasi dari dua relasi yang terdiri dari kombinasi yang mungkin dari relasi – relasi ( kombinasi yang memungkinkan ini di dapat dari atribut ‘x’ yang sama, dimana hasilnya nanti hanya satu yang muncul).Simbol : Ilustrasi

R S R Sa1 b1 b1 c1 a1 b1 c1a2 b1 b2 c2 a2 b1 c1a3 b2 b3 c3 a3 b2 c2

Contoh query :Skema relasi Dosen (Kd_Dosen,Nama,Alamat,JK,Telp)Skema relasi Nilai (NPM,Kd_mk,mt_kuliah,Mid,Uas,Nilai,Kd_dosen)Tampilkan kd_dosen,nama dosen dan mt_kuliah .nilai dari semua dosen yang telah mengisi nilai untuk tabel nilai. kd_dosen,Nama (Dosen) Kd_dosen,Mt_kuliah,Nilai (Nilai)

Kd_dosen.Dosen

Nama Mt_kuliah Nilai

09738 Kurniawan Matematika 1 C09536 Fristy P.Kewiraan C00058 Gunawarm

anSistem Penunjang Keputusan

C

09825 Lundi Sistem Terdistribusi A09689 Qiqan Teori Bahasa dan

AutomataB

09689 Qiqan Teori Bahasa dan Automata

B

00198 Vien Pengantar Basis Data A09825 Lundi Sistem Terdistribusi A09143 Windi Konsep Sistem Informasi A09143 Windi Konsep Sistem Informasi A

Model Relasional / Irma RR Halaman 41

Page 14: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

2. Theta Join Membentuk suatu relasi yang terdiri dari tupel-tupel yang sesuai dengan kondisi yang telah ditentukan dari perintah cartesian product ( kondisi nya menggunakan perintah Selection )Simbol : F atau q

q dimana q adalah operator pembanding (<, <=, >, >=, =, ~=)

R F S = s F (R x S)

Ilustrasi : R X S

R S B < DA B C D E A B C D E1 2 3 4 6 1 2 3 4 64 5 6 7 8 1 2 3 7 87 8 9 4 5 6 7 8

Contoh query : Skema relasi Dosen (Kd_Dosen,Nama,Alamat,JK,Telp)Skema relasi Nilai (NPM,Kd_mk,mt_kuliah,Mid,Uas,Nilai,Kd_dosen)Jika perintah ini di batasi dengan Kd_dosen pada file Dosen = Kd_dosen yang ada pada file Nilais Dosen.Kd_dosen=Nilai.Kd_dosen Ù Dosen.nama=’Windi’ (NPM,Mt_kuliah,Nilai,Kd_dosen(Nilai) X Kd_dosen,nama(Dosen) )

NPM Mt_kuliah Nilai Kd_dosen.Nilai

Kd_dosen.Dosen

Nama

50499123 Konsep Sistem Informasi A 09143 09143 Windi50499451 Konsep Sistem Informasi A 09143 09143 Windi

3. IntersectionMembentuk suatu relasi yangterdiri atas tupel-tupel yang sama dari dua relasi.Simbol : Ilustrasi : R S R S

Contoh query :Skema relasi KRS (NPM,Kd_mk,mt_kuliah,SKS,Kelas,Semester)Skema relasi Mahasiswa (NPM,Nama,Alamat,Kota,Tgl_lahir,JK)

Model Relasional / Irma RR Halaman 42

Page 15: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Cari NPM yang telah mengisi KRS NPM (Mahasiswa) NPM(KRS)

4. DivisionUntuk mendapatkan nilai yang ada pada salah satu atribut dari relasi pembilang yang nilai atribut lainnya sama dengan nilai atribut relasi penyebut.

Simbol : Ilustrasi : R S R : Sa b c d c d a ba b e f e f e db c e fe d c de d e fa b d e

Contoh query :Skema relasi KRS (NPM,Kd_mk,mt_kuliah,SKS,Kelas,Semester)Skema relasi Mahasiswa (NPM,Nama,Alamat,Kota,Tgl_lahir,JK)

Cari mata kuliah yang diambil oleh semua mahasiswa yang tinggal di Jakarta

( Kd_mk,NPM(KRS) ) : NPM(sKota=Jakarta(Mahasiswa) )

( Kd_mk,NPM(KRS) ) : NPM(Kota=Jakarta(Mahasiswa) ) NPM Kd_mk

50499025 KD045201

50499001

50499025 KU000202

50499025

50499101 KK04532650499101 KK04533750499101 KK04530550499123 KK04541750499451 KK04521050499451 KK04533750499451 KK04530550499451 KK045417

Hasilnya :

NPM Kd_mk50499025 KD04520

150499025 KU00020

2

Model Relasional / Irma RR Halaman 43

Page 16: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

V.2 KALKULUS RELASIONAL

Pengambilan suatu data pada aljabar relasional selalu di spesifikasikan secara eksplisit dan juga strategi untuk mengevaluasikan queri. Sedangkan pada kalkulus relasional tidak ada penjabaran bagaimana mengevaluasi queri, hanya menspesifikasikan apa yang harus ditampilkan bukan bagaimana menampilkan.

Kalkulus relasional menggunakan simbol logik yang di sebut dengan Kalkulus predikat . Pada saat berelasi dengan database muncul dua bentuk dari kalkulus relasional yaitu tupel dan domain.

A. Kalkulus Relasional Berdasarkan Tupel

Dalam kalkulus relasional tupel digunakan variabel dari tupelnya.Variabel dari suatu tupel adalah daerah yang terdefinisi sebagai nama dari suatu relasi.

Menspesifikasikan daerah dari suatu varibel tupel M sebagai entitas Mahasiswa , ditulis ; Mahasiswa(M)Untuk menuliskan queri, “Cari semua tupel M dimana F(M) adalah benar”, { M | F(M)}

dimana F adalah sebuah formula atau predikat Bentuk – bentuk dari predikat :

1. S R S : Variabel , R : Relasi 2. S[x] q U[y] S & U : variabel tupelq : Operator aritmatik (<,>,=,³,£,¹ )x : atribut pada Sy : atribut pada U

3. S[x] q C C : Konstantaq : operator penghubung ( (and) , Ú (or))

Di dalam kalkulus relasional tupel ini terdapat beberapa variabel yaitu 1. ( there exist )

t (Q(t))ada sebuah tupel t di dalam relasi r dengan formula Q(t) adalah benar

Model Relasional / Irma RR Halaman 44

Page 17: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

2. ( for all )t (Q(t))formula Q(t) adalah benar untuk semua tupel di dalam relasi rcontoh :1. Skema relasi Mahasiswa (NPM,Nama,Alamat,Kota,JK,Telp)Skema relasi MKUL (kd_mk,mt_kuliah,SKS,semester)Cari informasi mengenai Mahasiswa yang NPM=’50499101’Range of M is Mahasiswa{M|Mahasiswa(M) Ù M.NPM=’50499101’}atau{M|M Mahasiswa M[NPM]=’50499101’}atau{M| M.NPM=’50499101’}M.NPM berarti nilai dari atribut NPM untuk variabel tupel M. Menampilkan atribut yang telah ditentukan .

2.Dari skema relasi Dosen (nip,nama,alamat,Kota,JKL)Cari informasi nama - nama dosen yang tinggal di kota Depok{D.nama| D Dosen D[Kota]=”Depok”}Untuk contoh soal no 3- 5 lihat skema di bawah ini;Skema relasi Mahasiswa (npm,nama,alamat,kota,JKL)Skema relasi Dosen (nip,nama,alamat,kota,JKL)Skema relasi KRS(npm,kdmk,kelas)Skema relasi MKUL (kd_mk,mt_kuliah,sks,semester)Skema relasi Nilai (npm,kdmk,mid,final)

3.Cari semua mahasiswa yang mengambil mata kuliah”SIM”Range of M is MahasiswaRange of K is KRS{M|Mahasiswa(M) Ù (K) (KRS(K) Ù (M.npm = K.npm) Ù K.namamk = “SIM”)}atau {M|K(K.NPM=M.NPM Ù K.Mt_kuliah=’SIM’}4.Cari mahasiswa yang mempunyai nilai final diatas 70 untuk kode mata kuliah KK045210Range of M is MahasiswaRange of N is Nilai{M.npm,M.nama|Mahasiswa(M) Ù (N) (Nilai(N) Ù (M.npm = N.npm) Ù (N.nilai > 70) Ù N.kdmk=”KK045210”)}atau

Model Relasional / Irma RR Halaman 45

Page 18: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

{M.NPM,M.Nama|N(N.NPM=M.NPM Ù N.Kd_mk=’KK045210’ Ù N.Nilai > 70 } 5.Cari dosen yang tidak tinggal di kota DepokRange of D is Dosen{D|Dosen(D) Ù (D) (D.kota ¹ “Depok”)}atau {D|~D(D.Kota=’Depok’)}atauD (D.kota ~ ‘Depok’)

B. Kalkulus Relasional Berdasarkan Domain

Ekspresi {<x1,x2,…, xn > | P <x1,x2,…, xm > } m>= n

Xi : variabel domainP : predikat terhadap x

Bentuk – bentuk dari predikat:1. R (x1,x2,…,xn) dimana R adalah relasi dan setiap x adalah

domain variabel2. x q y dimana x & y adalah variabel domain dan q adalah

operatornya3. x q C dimana x adalah domain, C adalh konstanta dan q

adalah operatornyaContoh:Cari data mengenai dosen yang mempunyai Kd_dosen=’09738’{<k,n,a,t,j> | <k,n,a,t,j> Dosen Ù n = ‘09738’cari namamk yang kodemk nya”KK045310”

{<n> | <n,d> MKUL Ù d=”KK045310”

V.3 QUEL

Merupakan bahasa queri untuk sistem basis data Ingres ( Interactive Graphics and Retrieval System) yang dikembangkan oleh Universitas California Berkeley. Struktur Dasar:1. Setiap variabel tuple di tulis dalam range yaitu :

range of t is r2. Kalimat retrieve memiliki fungsi sama dengan Select pada SQL3. Kalimat Where berisi predikat yang ditentukan4. Bentuk query QUEL :

Range of t1 is r1

Model Relasional / Irma RR Halaman 46

Page 19: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Range of t2 is r2:range of tm is rmretrieve(ti1.Aj1, ti2.Aj2, …, tim.Ajm)Where Pti adalah variabel tupelri adalah relasiAjm adalah atributP adalah predikat

5. Tidak dapat untuk melaksanakan operasi aljabar seperti intersection, union dan minus Perintah QUEL di kelompokan :1. DDL

CreateIndexDefine viewDestroyModify

2. DMLRetrieveReplaceDeleteAppend

6. Logik : AND, OR dan NOT7. Fungsi Statistik : COUNT, MAX, MIN, AVG, SUM8. Ekspresi Aritmatik : >, <, <>, >=, <=Contoh :Di ketahui skema tabel :CUSTOMER (Cust_Name,Street,Cust_city)BORROW(Branchname, Location, Cust_name, Amount)DEPOSIT ( Branch_name, Account_name, Cust_name, Balance)

1. Dapatkan semua nama customer yang memiliki tabungan pada cabang PerryrideRange of t is DepositRetrieve(t.cust_name)Where (t.branch_name=’Perryride’);

2. Queri di atas tidak dapat mengeliminasi data duplikat. Untuk mengatasi duplikat maka perintah querinya :Range of t is DepositRetrieve(t.cust_name)Where (t.branch_name=’Perryride’)

3. Dapatkan nama customer dan kota untuk semua kustomer yang memiliki pinjaman dari Bank Hermina

Model Relasional / Irma RR Halaman 47

Page 20: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Range of s is BorrowRange of t is DepositRetrieve(t.cust_name,t.cut_city)Where(t.branch_name=’Perryride’ and t.cust_name=s.cust_name);

4. Dapatkan semua customer yang memiliki pinjaman dan tabungan pada cabang perryrideRange of s is BorrowRange of t is DepositRetrieve unique(s.cust_name)Where(t.branch_name=’Perryride’ and t.cust_name=s.cust_name);

5. Dapatkan rata-rata balance untuk cabang perryride. Range of t is Deposit

Retrieve avg(t.balance) where t.Branch-=name’Perryride Where (t.branch_name=’Perryride’ and t.cust_name=s.cust_name);

6. Dapatkan account number yang memiliki balance diatas rata-rata balance.Range of t is depositRange of t1 is DepositRetrieve(t.account number)Retrieve(t.accountnumber) Where t.balance > avg u (.Balance);

7. Dapatkan account number yang memiliki balance diatas rata-rata balance untuk cabang Perryride:Range of t is depositRange of u is DepositRetrieve(t.accountnumber) Where t.balance > avg (u.Balance

where u.branchname = ‘Perryride”);

8. Hapus semua tupel pada relasi borrowRange of t is depositDelete t ;

9. Hapus customer yang bernama smith pada relasi borrowRange of t is borrowDelete t where t.Custname=’Amir”;

10. Tambahkan data Smith dengan belanja $1200 pada accountnumber9732 di cabang perryrideAppend to deposit ( Branchname=’Perryride’, Accountnumber=’9732’, Cust_name=’Smith”,balance=1200) ;

Model Relasional / Irma RR Halaman 48

Page 21: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

11. Naikan semua balance sebesar 5 % pada relasi depositRange of t is depositReplace t(balance=1.05*t.balance);

V.4 QBE ( Query By Example )

QBE mempunyai beberapa kelebihan yang tidak dipunyai oleh bahasa-bahasa lain, antara lain pengguna dapat langsung mempergunakan editor layar khusus dan langsung membuat query di terminal tersebut. QBE dapat dipergunakan untuk mengerjakan banyak fungsi-fungsi seperti yang ada pada SQL, hanya ada perbedaan dalam tata bahasanya. QBE tidak mempergunakan pernyataan-pernyataan dalam bahasa Inggris, tetapi mempergunakan editor layar khusus dan langsung membuat query di terminal tersebut. Pengguna dapat menggunakan / memanggil beberapa tabel kosong di layar untuk diberi : nama relasi, atribut-atributnya serta instruksi-instruksi yang diinginkan. Untuk mendapatkan tuple-tuple yang akan ditayangkan di layar, semua instruksi diakhiri dengan titik. Pengoperasian-pengoperasian tersebut seperti PRINT, UPDATE, INSERT dan DELETE. Pada beberapa kasus pengguna membutuhkan 2 atau lebih tabel yang ditampilkan di layar. Untuk menghubungkan, caranya dengan memasukkan elemen ke dalam struktur tabel dan diawali dengan garis bawah (_) dan terdiri sampai dengan 18 karakter alphabet atau numeric. Dengan menggunakan operator-operator yang baik, pengguna dapat memformulasikan permintaan yang komplek.

Bagan umum tabel dari QBEnama relasi nama atribut

Intruksi tuple seperti yangdlm tuple disebutkan dalam query

Penggunaan QBE ini dapat diaplikasikan pada MS ACCESS query. Query dalam QBE dituliskan dengan menggunakan tabel skeleton

Model Relasional / Irma RR Halaman 49

Page 22: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

yang menggambarkan skema relasi. User memiliki skeleton yang dibutuhkan untuk memberikan query dan mengisi skeleton dengan ‘example rows’.

Pendahuluan pada MS ACCESS queries.

Pada saat pengguna membuat atau membuka dengan menggunakan MS ACCESS . jendela database akan terlihat seperti gambar ( Table, Froms, Queries dan Reports).Untuk bertanya mengenai data , pengguna merancang suatu queri yang di tuliskan pada MS ACCESS data mana yang akan diambil. MS ACCESS mengumpulkan data yang akan diambil dalam dynaset. Dynaset adalah tabel view yang dinamik diambil dari satu tabel ataupun lebih dari satu tabel, di seleksi ataupun di atur seperti yang diinginkan pengguna dengan menggunakan perintah queri.

Tabel – tabel yang digunakan pada database perkuliahan:

Model Relasional / Irma RR Halaman 50

Gambar 1 : Jendela database

Page 23: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

* Membuat Select Queries Menggunakan QBE

Select queries adalah mengambil data dari satu atau lebih tabel dan menampilkan hasil queri tersebut di dalam suatu lembar data dimana pengguna dapat mengupdate record ( dengan batasan tertentu ).Lembar data akan menampilkan data dari tabel dalam baris dan kolom , sama seperti lembar kerja pada lotus . Select queri dapat juga melakukan pengelompokan record atau mengkalkulasi menjumlah, menghitung, rata-rata dan lainnya.

Jendela select queries adalah alat graphikal QBE. Karena bentuk graphikalnya, pengguna dapat menggunakan mouse untuk menyeleksi , memanipulasi obyek pada jendela untuk

Model Relasional / Irma RR Halaman 51

Page 24: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

mendefinisikan example yang pengguna akan lihat. Pengguna menspesifikasikan field dan record yang pengguna inginkan pada queri di QBE.Ketika pengguna membuat queri dengan QBE , di belakang rancangan ini terdapat perintah SQL yang sama, pengguna dapat melihat atau mengedit perintah tersebut.

Contoh :1. Dapatkan nama mahasiswa yang tinggal di kota Bogor

MHS npm nama kota Tgl_lahirP. bogor

Dengan Microsoft Access

3. Ingin menampilkan semua data pada tabel mhs

MHS npm nama kota Tgl_lahirP. P. P. P.

AtauMHS npm nama kota Tgl_lahir

P.

Dengan Access

Model Relasional / Irma RR Halaman 52

Page 25: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

3. Ingin menampilkan record tertentu pada tabel mtkuliah

MKUL Kd_mk Nama_mk SksP. KK045310 P. P.

AtauMKUL kd_mk nama_mk sks

P. KK045310

4. Dapatkan nama mahasiswa yang mendapatkan nilai uas > 75

Model Relasional / Irma RR Halaman 53

Page 26: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Mahasiswa npm nama kota tgl_lahir_NILAI P.

NILAI npm kd_mk nil_mid nil_uas_MHS >75

Dengan Access

5. Dapatkan npm dan nama mahasiswa yang mengambil mata kuliah basis data dan nilai midnya >75MHS npm nama kota tgl_lahir

_SX P.

MKUL kd_mk nama_mk sks_PY Sistem Terdistribusi

NILAI npm kd_mk nil_mid nil_uas_SX _PY >75

Model Relasional / Irma RR Halaman 54

Page 27: bahan ngajar minggu ke 3ftp.gunadarma.ac.id/handouts/S1_Sistem Informasi.1/Basis... · Web viewBASIS DATA RELASIONAL I. Pengertian Basis Data Relasional Tabel dan Keterhubungannya

Dengan Access

6. Dapatkan npm dan nama mahasiswa yang mengambil mata kuliah basis data atau Konsep Sistem Informasi dan nilai midnya

<60

Model Relasional / Irma RR Halaman 55