Model Relasional Part1 Review Pertemuan 3 Beberapa fitur
Model Relasional Part-1
Review Pertemuan 3 ► Beberapa fitur tambahan dalam diagram ER : Spesialisasi yaitu Pengelompokan Himpunan Entitas Menjadi Suatu Entitas Baru yang bersifat Top Down, Generalisasi yaitu Penyatuan Entitas-entitas menjadi satu entitas baru yang bersifat Bottom Up ► Agregasi merupakan fitur tambahan yang menunjukkan bahwa suatu relasi terjadi karena secara kronologis didahului terjadinya relasi lain sebelumnya 2
Pengantar Relational Data Model ► Merepresentasikan data pada basisdata sebagai kumpulan dari relasi-relasi (relations) ► Sering kali disebut sebagai relational database 3
Relations ► Struktur data dasar yang menyimpan informasi ► Digunakan untuk menyimpan entitas, attribut maupun relasinya ► Strukturnya sebagai tabel 4
Karakteristik Relasi ► Nama relasi, attribut sebaiknya mengidentifikasi fungsi relasi dan attribut yang bersangkutan ► Urutan attribut sebaiknya disesuaikan dg kebutuhan (penting untuk dipertimbangkan) ► Urutan nilai tuple/record disesuaikan dengan keperluan (misalnya untuk pencarian) ► Type dan ukuran attribut sangat penting untuk dipertimbangkan sesuai dengan kebutuhan 5
Contoh Relasi ► Penduduk (NIK, Nama, Alamat, Rw, Kode. Kel, Jenis. Kelamin, Status. Marital, Tmp. Lahir, Tgl. Lahir, Pekerjaan, Pendidikan) ► Nama relasi(entity) = Penduduk ► Attribut ke 1 = Nik ► Attribut ke 2 = Nama ► Attribut ke 12 = Pendidikan ► Jumlah attribut = 12 6
Nilai dari Tuple ► Harus Atomic ► Jika Multivalue attribute hrs direpresentasikan ke dalam relasi lain ► Jika Composite attribute hrs dinyatakan sebagai simple attribute ► Null value berarti (tidak diketahui nilainya, tdk ada harga tertentu, tidak bermanfaat pada tuple tersebut) 7
Tabel ► Tersusun menurut baris dan kolom ► Terdiri dari baris-baris yang memuat data yang saling berhubungan satu dengan lainnya ► Terdiri dari kolom-kolom data-data dengan tipe yang sama 8
Contoh Tabel Attribut Setiap Baris Disebut Sebagai Tuple/Record 9
Penjelasan Tabel ► Jumlah tuple = 2 ► Jumlah attribut = 6 ► Dalam satu tabel, attribut yang berbeda dapat mempunyai domain yang sama misalnya attribut Rt dan attribut Rw 10
Attribut Key suatu Relasi ► Setiap tuple dari suatu relasi akan berbeda dengan tuple lainnya ► Setiap tuple adalah kombinasi dari nilai semua attribut yang ada ► Kumpulan attribut disebut sebagai superkey ► Key adalah superkey minimum 11
Skema basisdata relasional ► Himpunan dari skema relasi beserta integrity constrainnya 12
Integrity Constraint (IC) ► Didefinisikan pada skema relasi ► Harus dipenuhi oleh setiap instance dari skema relasi ► condition that is specied on a database schema, and restricts the data that can be 13
Integrity Constraint (IC) ► stored in an instance of the database ► IC memuat § Domain Constraint § Key Constraint § Entity Integrity Constraint § Referential Integrity 14
Domain Constraint ► Nilai attribut dari suatu relasi harus atomic dari domain tersebut ► Misalnya Dom(NIK) dari relasi penduduk hanya memuat nilai 0 sampai dengan 9 dan karakter “. ” ► Dom(Tgl. Lahir) dari relasi penduduk untuk bulan hanya boleh memuat 1 sampai 12 saja 15
Key Constraint ► Tidak boleh terdapat dua tuple yang sama atau lebih dalam suatu relasi ► Key dalam suatu relasi dapat berupa satu attribut atau kombinasi attribut (dapat membedakan antara tuple satu dg lainnya) ► Tuple adalah satu set instance dari kumpulan attribut yang ada pada suatu relasi 16
Entity Integrity ► Dalam suatu skema relasi tidak diperkenankan terdapat Primary Key yang bernilai NULL ► Nilai NULL akan mengakibatkan tuple yang bernilai NULL skema relasi tersebut tidak dapat dihubungkan dengan skema relasi lain 17
Referential Integrity ► Constraint yang berkaitan dengan konsep Foreign Key antara dua buah skema relasi yang mempunyai relationship 18
Foreign Key ► Pada skema R 1 FK attribute mempunyai domain = skema R 2 PK attribute ► Harga tuple pada R 1 FK attribute = R 2 PK attribute ( t 1[FK]=t 2[PK] ) 19
Operasi Update pada Relasi ► Insert ► Delete ► Modify 20
Operasi Insert ► Menyispkan tuple baru ke dalam relasi ► Operasi insert dapat melanggar 4 jenis constraint 21
Pelanggaran Insert ► Domain, Nilai yg diberikan tdk ada dalam domain yg berkorespondensi ► Key, Nilai key yang diinsertkan sudah ada dalam relasi ► Entity, PK dari tuple baru bernilai NULL ► Reffrential Integrity, t 1[FK]<>t 2[PK] 22
23
Tindakan Pelanggaran Operasi Insert ► Reject (Menolak), dijelaskan alasan penolakan – NULL – SUDAH ADA – Tidak sesuai DOMAIN – Nilai yang diacu tdk ditemukan ► Berusaha memperbaiki Kesalahan yang ada 24
Operasi Delete dan Pelanggarannya ►Menghapus tuple dari suatu skema relasi ►Operasi ini akan terjadi pelanggaran, jika tuple yang akan diacu oleh FK digunakan oleh tabel lain. ►Dapat menyebabkan LOSS INFORMATION, jika salah dalam melakukan tindakan penanganannya 25
Tindakan Pelanggaran Operasi Delete ► Reject (Menolak delete yang dilakukan) ► Cascade (Menghapus sejumlah tuple yang terkait) ► Melakukan modifikasi nilai attribut yang mengacu pada tuple yg dihapus (Set NULL or Replace with the other valid tuple as new refferences) ► Kombinasi 2 dan 3 26
Operasi Modify ► Digunakan untuk merubah nilai satu atau lebih attribut (Non Key Attribute) ► Key Atribut sebaiknya tidak dirubah, Melakukan perubahan key attribut akan menimbulkan masalah ► DBMS mengecek kemabali, apakah perubahan sesuai dg domain untuk setiap Non Key attribute. 27
Pelanggaran Operasi Modify ► Referential Integrity, ika yang dirubah adalah FK dan yang diacu tidak ditemukan (t 1[FK]<>t 2[PK]) ► Domain, perubahan nilai tidak didasarkan pada domain yang sudah didifinisikan ► Entity, Jika key=NULL ► Key, sbl perubahan diacu oleh tabel lain atau perubahan baru menyebabkan key tsb double 28
Tindakan Pelanggaran Operasi Modify alasan penolakan) ► Reject, (DBMS memberikan ► Merubah tuple lain apabila perubahan yng dilakukan merupakan nilai yang acu oleh relasi lain 29
Summary ► Model basis data menunjukkan suatu cara/mekanisme yang digunakan untuk mengelola/mengorganisasi data secara fisik dalam memori sekunder yang akan berdampak pula pada bagaimana kita mengelompokkan dan membentuk keseluruhan data yang terkait dalam sistem yang sedang kita tinjau ► Model basis data relasional merupakan model yang paling banyak digunakan karena kemudahan dalam penerapan dan kemampuannya dalam mengakomodasi berbagai kebutuhan pengelolaan basis data yang ada di dunia nyata 30
Soal Latihan 1. Diketahui tabel di bawah ini 31
Soal Latihan Tentukan jumlah tupplenya ► Tentukan jumlah fieldnya ► Tentukan primary keynya ► Lakukan operasi update dan terapkan integrity constraintnya ! (tidak melanggar integrity constraintnya) ► 32
REFERENSI Referensi Wajib: Raghu Ramakhrisnan, Johannes Gehrke , “Database Management System” 6 th Edition, Mc Graw Hill, 2006 (chapter : 3) ► Referensi Tambahan/dianjurkan: David M. Kroenke, Database Concepts 4 th Edition, Prentice Hall 2004 ► 33
- Slides: 33