Perancangan Database Bagian I

dokumen-dokumen yang mirip
Perancangan Database Bagian I. Ahmad Hanafi

PERANCANGAN DATABASE E-R DIAGRAM 2. Pengolahan Basis Data D3-TI STMIK AMIKOM

MODEL DATA RELASIONAL

DIAGRAM E-R. ERD (ENTITY RELATIONSHIP DIAGRAM) ALAT BANTU PERANCANGAN BASIS DATA

Diagram E-R. ERD (Entity Relationship Diagram) Alat Bantu Perancangan Basis Data

ANOMALI. Terlihat ada ketidak konsistenan. Fakta pertama menyatakan bahwa pemasok citra berlokasi di Bogor, tetapi fakta kedua menyatakan di Bandung.

PERANCANGAN BASIS DATA. Alif Finandhita, S.Kom

Model adalah representasi kenyataan.

Perancangan Basis Data

BASIS DATA (BS203) NORMALISASI. fb: NDoro Edi. Page 1

SISTEM BASIS DATA. Pertemuan 4. 3 SKS Semester 2 S1 Sistem Informasi Nizar Rabbi Radliya

BAB 5 ANOMALI DAN INTEGRITAS DATA PADA MODEL RELASIONAL

20 Bhs.Jepang Misalnya akan dibuka kursus baru yaitu Bhs.Jerman dengan biaya akan tetapi belum ada seorangpun yang ikut kursus ini, shg

Contents. Normalisasi. Bentuk Normalisasi. Dependency. Status Kunci (Key) Dekomposisi

Teknik Normalisasi. Normalisasi adalah proses pengelompokan atribute-atribute dari suatu relasi sehingga membentuk WELL STRUCTURE RELATION.

Perancangan Database Bagian II (Normalisasi( Normalisasi) TUJUAN PEMBELAJARAN

Enhanced E-R Model 4/20/2009 1

supertipe/subtipesubtipe

Materi 4 BASIS DATA 3 SKS Semester 4 S1 Sistem Informasi UNIKOM 2016 Nizar Rabbi Radliya

INTEGRITAS DAN KEAMANAN DATA. Gentisya Tri Mardiani, S.Kom., M.Kom

Tujuan Umum Tujuan Khusus Pokok Bahasan/Materi

Database desain juga termasuk diagram ER (Entity-hubungan model). Diagram ER adalah diagram yang membantu merancang database secara efektif dan

Materi 3 BASIS DATA 3 SKS Semester 4 S1 Sistem Informasi UNIKOM 2016 Nizar Rabbi Radliya

BASIS DATA. Model Data Relational. Fakultas Ilmu Komputer UDINUS

BAB IV Normalisasi Data

SISTEM BASIS DATA (Lanjutan) :

SISTEM BASIS DATA. Pertemuan 3. Nizar Rabbi Radliya 3 SKS Semester 2 S1 Sistem Informasi

Pertemuan Sistem Informasi SI adalah suatu suatu sistem dalam suatu organisasi yang merupakan

Sistem Basis Data. Chapter 5: Logical Database Design and the Relational Model Andronicus Riyono, M.T.

BASIS DATA I/2011-GANJIL MODEL RELASIONAL. Oleh Team Teaching Database. 12 Oktober 2011 BASIS DATA I/2011-GANJIL 1

P7 Perancangan Database

PERANCANGAN BASIS DATA

BAB III MODEL DATA RELASIONAL DAN ALJABAR RELASIONAL

BAB III PERANCANGAN BASIS DATA DGN TEKNIK NORMALISASI

PERANCANGAN DATABASE E-R DIAGRAM. Pengolahan Basis Data D3-TI STMIK AMIKOM

Pendahuluan. Tujuan MODUL

BAB V. dimengerti, mudah dipelihara, mudah memprosesnya, dan mudah untuk dikembangkan sesuai kebutuhan baru

INTEGRITAS BASIS DATA. OLEH : Slamet Sn Wibowo Wicaksono

SISTEM BASIS DATA Imam Asrowardi, S.Kom.

PERANCANGAN SISTEM DATABASE

BAB 2 LANDASAN TEORI

ERD MAPPING BASIS DATA. Rajif Agung Yunmar, S.Kom., M.Cs.

SISTEM BASIS DATA Presented By

Relational Database & Pemodelan Data [Review]

TUGAS I BERKAS DAN BASIS DATA E-R Diagram

BASIS DATA (BS203) MODEL RELASIONAL

BASIS DATA. Desain Database dan Normalisasi. Fakultas Ilmu Komputer UDINUS

Pertemuan Transformasi ER-MODEL INDIKATOR. 1. Memahami ER model 2. Menerapkan transformasi ER- Model ke Model Relasional.

Normalisasi 1 Normalisasi 2 Normalisasi 3 BCNF

DAFTAR ISI HALAMAN JUDUL...

Teknik Informatika. Bab III: Perancangan BasisData

NORMALISASI DATA POKOK BAHASAN. Pendahuluan

PERANCANGAN SISTEM TERINCI DATABASE

Desain Data Base. Proses Desain Data Base

SISTEM BASIS DATA AUB SURAKARTA

OVERVIEW BASIS DATA RELASIONAL. Oleh: Ir. M. Ramadhan, MT

E-R Model (Model Keterhubungan Entitas)

SISTEM BASIS DATA 1. WAHYU PRATAMA, S.Kom., MMSI.

ENTITY RELATIONSHIP DIAGRAM. By Tim Dosen

DESIGN BASIS DATA SECARA FISIK

SISTEM BASIS DATA 2. WAHYU PRATAMA, S.Kom., MMSI.

IMPLEMENTASI CONSTRAINT UNTUK MENJAMIN KONSISTENSI DAN INTEGRITAS DATA DALAM DATABASE

RENCANA PROGRAM DAN KEGIATAN PEMBELAJARAN SEMESTER (RPKPS) Mata Kuliah Sistem Basis Data I SI 1303

KODE MK : ST 126 UT3. Pemodelan Data. Agus Romadhona

BAB VI PROTEKSI DATA (DATABASE CONTROL)

BASIS DATA. Model Data Relational. Fakultas Ilmu Komputer UDINUS

NORMALISASI. By Mrs Imana Malia Kondou

BASIS DATA (BS203) NORMALISASI. fb: NDoro Edi. Page 1

Perancangan Basis Data

Pendekatan Normalisasi

Konsep Normalisasi dan Anomali Tabel

NORMALISASI BASIS DATA. Institut Teknologi Sumatera

bergantung pada keberadaan entitas lainnya[9]. relasi yang merekatkan dua entitas adalah bersifat

Basis Data. Roni Andarsyah, ST., M.Kom Lecture Series

Entity Relationship Model

PERANCANGAN SISTEM TERINCI DATABASE

Model Relational. S# Nama Status Kota S1 Hanato 20 Bandung S2 Andi 10 Jakarta S3 Shy 25 Surabaya S4 Tina 20 Medan

Model Data Dalam SBD

Model Relasional. Basis Data. Pengertian

MODEL DATA RELASIONAL

Pemodelan Basis Data Entity-Relationship Diagram (contoh kasus 2) Yusuf 2010

IMPLEMENTASI BASIS DATA. By : I Ngh Putu Mardika, S.Pd

Konsep Basis Data (Lanjut)

Entity Relationship Diagram

System Technology Database 1. 2 Model Relational. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.

Demi Masa.. Sesungguhnya Manusia Berada Dalam Kerugian Bila Tidak Memanfaatkan Waktu Dengan Sebaiknya.. (sebuah renungan untuk diri )

Pengenalan Basis Data

Contoh SQL Constraint

SISTEM BASIS DATA II S A N T I W I D I A N T I

MODEL RELASI ENTITAS (E-R MODEL)

Perancangan Basis Data. Ari Sulistiyawati

BAB 4 IMPLEMENTASI DAN EVALUASI. berjalan. Berikut ini adalah kegiatan-kegiatan yang dilakukan pada tahap

Pertemuan 3 dan 4 : MODEL DATA RELASIONAL

Administrasi Basis Data. Integritas Data. Yoannita

E-R Diagram Kusnawi, S.Kom, M.Eng

Model Relational. Dian Dharmayanti

Teknik Perancangan Basis Data

SISTEM BASIS DATA 3 SKS

P9 Normalisasi. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Mercu Buana Yogyakarta

MEMAHAMI KONSEP DATABASE. Oleh : Yuhefizar, S.Kom

Transkripsi:

Perancangan Database Bagian I 1 Pengantar Apa yang akan dipelajari dalam modul ini? Model data relasional Relasi Kunci Integrity Constraints Anomali Transformasi Diagram E/R ke Relasi Pemetaan Hubungan 2 Diperkenalkan oleh Codd tahun 1970 Data direprentasikan dalam tabel berdimensi dua Model Data Relasional Nomor_Peg 05001 Karmen 05002 Tigor 05003 Sita Devi 3 Model Data Relasional Tiga komponen yang mendasari model data relasional: Struktur data (data structure) Data disusun dalam bentuk tabel (relasi) Pemanipulasi data (data manipulation) Tabel menyimpan operasi-operasi untuk memanipulasi data. Contoh: perintah dalam bahasa SQL. Integritas data (data integrity) Adanya fasilitas-fasilitas dalam aturan bisnis (business rules) yang menjaga integritas data saat 4 terjadi manipulasi data. Model Data Relasional Istilah relasi (relation) menyatakan nama tabel Suatu relasi dapat dituliskan dengan cara: Menggambarkan tabel Menuliskan notasi nama tabel (namakunciprimer, nama kolom2, ) Contoh: PEGAWAI(Nomor_Peg, ) Struktur data Nomor_Peg 05001 Karmen 05002 Tigor 05003 Sita Devi 5 Relasi Setiap relasi memiliki kunci primer (primary key) Kunci primer adalah atribut atau sejumlah atribut yang menjadi pembeda setiap baris dalam relasi Kunci primer biasa dinyatakan dengan garis bawah PEGAWAI(Nomor_Peg, ) Kunci primer 6 1

Kunci Kunci dapat dibedakan menjadi: 1. Kunci sederhana : Terdiri atas sebuah atribut 2. Kunci komposit : Tersusun atas dua atribut atau lebih Kunci sederhana: PEGAWAI(Nomor_Peg, ) DEPARTEMEN(Kode_Dep, _Dep) BARANG(Kode_Barang, _Barang) Kunci komposit: BARANG DIPESAN(No_Pesanan, Kode_Barang, Jumlah) NILAI(No_Mhs, Kode_Matakuliah,Skor) 7 Kunci Tamu Kunci tamu (foreign key) biasa digunakan sebagai penghubung ke relasi lain (Tabel yang merujuk ) Kunci asing Kd_Pelanggan A001 B001 B002 Aditya Bakdi Bramanto Kunci primer 0501 KOTA (Tabel yang dirujuk ) _Kota 0501 Semarang Salatiga 0503 Kendal 8 Kunci Tamu (Lanjutan ) Garis bawah terputus-putus biasa dipakai untuk menyatakan kunci tamu Contoh: (Kd_Pelanggan,, ) KOTA(, _Kota) 9 Sifat Relasi 1. Setiap relasi memiliki nama yang unik 2. Setiap isian pada perpotongan baris dan kolom (sel) harus bersifat atomik (bernilai tunggal) 3. Setiap baris bersifat unik 4. Setiap atribut memiliki nama yang unik 5. Urutan kolom tidak penting 6. Urutan baris juga tidak penting 10 Kekangan Integritas (Integrity Constraint) Tujuannya adalah untuk memfasilitasi penjagaan keakurasian dan integritas data dalam database (supaya tetap konsisten) Macamnya: Kekangan domain (domain contraints) Integritas entitas (entity integrity constraints) Integritas referensial (referential integrity constraints) Kekangan operasional 11 Kekangan Domain Memastikan data dalam domain yang telah ditetapkan Domain adalah kemungkinan nilai terhadap suatu atribut Contoh: A,B,C,D,E untuk nilai TRUE untuk pria dan FALSE untuk wanita INTEGER untuk menyatakan nilai bulat Dalam praktek, domain juga mencakup panjang data Contoh: CHARACTER, SIZE 35 INTEGER, 3 DIGITS 12 2

Contoh : Integritas Entitas NIM MHS mengambil KULIAH Gambar 1. Diagram E/R atribut : Arti : Tipe data : Format : Jangkauan : Keunikan : Dukungan null:. 13 Memastikan bahwa data yang terkait dengan kunci primer tidak terlanggar Secara khusus, data Null pada kunci primer akan ditolak Null berarti nilai pada atribut tidak pernah diberikan 14 Integritas Referensial Memastikan bahwa konsistensi antara dua buah relasi tetap terjaga Keadaan Awal: Kd_Pelanggan _Kota A001 Aditya 0501 0501 Semarang B001 Bakdi Salatiga B002 Bramanto 0503 Kendal 15 Kd_Pelanggan A001 B001 Aditya Bakdi B002 Bramanto Menjadi tidak konsisten Efek Tanpa Integritas Referensial 0501 Keadaan Setelah data pada KOTA dihapus: Salatiga _Kota 0501 Semarang 0503 Kendal 16 Kd_Pelanggan A001 B002 Aditya Bramanto Efek Integritas Referensial 0501 B001 Bakdi Keadaan Setekah data pada KOTA dihapus: Salatiga _Kota 0501 Semarang 0503 Kendal Ikut terhapus! atau penghapusan ditolak 17 Manipulasi data dalam database Aturan-aturan yang perlu diterapkan agar tidak terjadi pelanggaran terhadap aturan integritas referensial : Insertion rule Deletion rule Update rule 18 3

Insertion rule Deletion Rule Aturan: Jika dilakukan penyisipan baris terhadap sebuah tabel yang merujuk, maka harus terdapat nilai yang bersesuaian dalam tabel yang dirujuk. Contoh: Jika dalam tabel Pelanggan akan dimasukkan data kota dengan kode kota 0510, maka tidak diijinkan. Mengapa? Aturan: Jika diberlakukan penghapusan baris terhadap sebuah tabel yang dirujuk dan memiliki nilai yang bersesuaian dengan tabel yang merujuk maka harus ada perlakuan tertentu untuk menjamin integritas database tersebut. 19 20 Deletion Rule Perlakuan yang mungkin diterapkan: Restrict Tidak mengijinkan penghapusan terhadap baris dalam tabel yang dirujuk. Nullify Nilai yang bersesuaian dari tabel yang merujuk diset menjadi null kemudian menghapus baris dalam tabel yang dirujuk. Cascading deletion Baris yang bersesuaian dalam tabel yang merujuk secara otomatis akan ikut terhapus 4/26/B009 21 Update Rule Ada dua hal yang harus diperhatikan: Jika nilai yang diupdate adalah kunci tamu pada tabel yang merujuk, maka perlakuan seperti insertion rule. Jika nilai yang diupdate pada tabel yang dirujuk memiliki nilai yang bersesuaian dengan tabel yang merujuk maka perlakuan adalah sama seperti deletion rule. 22 Implementasi Aturan Integritas Referensial 1. Menerapkan logika pada program aplikasi yang menjamin aturan integritas referensial tetap dipertahankan, yaitu dalam baris-baris program. 2. Aturan integritas referensial dikenakan pada tabel saat dibuat. Dapat dilakukan jika DBMS yang dipakai memiliki fasilitas untuk mendukung integritas referensial. Mis: SQL. Kekangan Operasional Kekangan yang berhubungan dengan aturan bisnis Misalnya Saldo tabungan tidak boleh negatif Pada Access, kekangan seperti ini bisa diimplementasikan pada Validation Rule. Pada PostgreSQL, hal ini bisa diimplementasikan dalam prosedur tersimpan 23 24 4

Diskusi kelompok Relasi Berstruktur Baik Untuk setiap jenis perlakuan (referential integrity constraint), berikan contoh berdasar tabel dan KOTA Suatu relasi dikatakan berstruktur baik kalau : Mengandung redundansi sesedikit mungkin dan Memungkinkan pemakai memasukkan, mengubah, atau menghapus baris tanpa menimbulkan kesalahan atau tidak konsisten Kesalahan atau akibat tidak konsisten yang ditimbulkan pada ulasan di atas biasa dinamakan anomali 25 26 1. Anomali penyisipan 2. Anomali penghapusan 3. Anomali peremajaan Anomali Terjadi bila terdapat pengubahan pada sejumlah data yang redundan, tetapi tanpa sengaja tidak semua ikut diubah Anomali Peremajaan PEMASOK KOTA BARANG JUMLAH Kartika Jakarta Monitor GGG 10 Citra Bandung ZIP drive 4 Candra Jakarta Keyboard 5 Citra Bandung Mouse CCP 25 Pemasok Citra pindah ke Bogor dan Pengubahan dilakukan hanya pada data pertama PEMASOK KOTA BARANG JUMLAH Kartika Jakarta Monitor GGG 10 Citra Bogor ZIP drive 4 Candra Jakarta Keyboard 5 27 Citra Bandung Mouse CCP 25 28 Anomali Penyisipan Anomali Penghapusan Terjadi bila ada penambahan data Perhatikan contoh disamping Masalah: Bagaimana caranya menyimpan fakta bahwa ruang baru bernama Arjuna ada pada gedung selatan? KULIAH RUA NG TEMPAT Jaringan Komputer Merapi Gedung Utara Pengantar Basis Data Merbabu Gedung Utara Matematika I Rama Gedung Selatan Sistem Pakar Sinta Gedung Selatan Kecerdasan Buatan Merapi Gedung Utara Terjadi kiranya sesuatu baris yang tak terpakai dihapus dan sebagai akibatnya terdapat data lain yang hilang Perhatikan contoh di samping Apa yang terjadi seandainya data bahwa siswa dengan identitas 20 dihapus? Data yang menyatakan bahwa biaya kursus bahasa Jepang juga akan terhapus NO_SISWA NAMA_KURSUS BIAYA 10 Bahasa Inggris 120.000 10 Bahasa Prancis 120.000 10 Bahasa Mandarin 180.000 15 Bahasa Inggris 120.000 20 Bahasa Jepang 160.000 29 30 5

Tranformasi Diagram ER/EER ke Relasi Memetakan Entitas Reguler (kuat) _Pelanggan Tranformasi Diagram ER ke Relasi Memetakan Entitas dengan Atribut Komposit _Pelanggan Jalan Kota No_Pelanggan Alamat_Pelanggan Tipe entitas No_Pelanggan Alamat_Pelanggan Kode_Pos Tipe entitas dengan atribut komposit No_Pelanggan _Pelanggan Alamat_Pelanggan Relasi No_Pelanggan _Pelanggan Jalan Kota Kode_Pos Relasi 31 32 Tranformasi Diagram ER ke Relasi Memetakan Entitas dengan Atribut Bernilai Ganda No_Pegawai Pemetaan Entitas Lemah _Pegawai _Tanggungan Tanggal_Lahir No_Pegawai _Pegawai PEGAWAI Alamat_Pegawai Keterampilan Tipe entitas PEGAWAI dengan atribut bernilai ganda PEGAWAI Memiliki TANGGUNGAN No_Pegawai _Pegawai Alamat_Pegawai Relasi PEGAWAI No_Pegawai _Pegawai Relasi PEGAWAI No_Pegawai Keterampilan Relasi KETERAMPILAN PEGAWAI 33 No_Pegawai _Tanggungan Tanggal_Lahir Relasi TANGGUNGAN 34 No_Pelanggan Pemetaan Hubungan 1 to M _Pelanggan Nomor_Pesan Tanggal_Pesan No_Pesan Pemetaan Hubungan M to M Tgl_Pesan Kode_Produk Harga_Unit Jumlah Mengirim PESANAN PESANAN Meminta PRODUK No_Pelanggan _Pelanggan Relasi No_Pesan Tgl_pesan Relasi PESANAN No_Pesan Kode_Produk Jumlah Relasi BARIS PESANAN No_Pesan Tanggal_Pesan No_Pelanggan Relasi PESANAN 35 Kode_Produk Harga_Unit Relasi PRODUK 36 6

No_Dosen Pemetaan Hubungan 1 to 1 _Dosen Kode_Prodi _Prodi No_Pelanggan Pemetaan Entitas Asosiatif (Ternary) Kode_Vendor Alamat Tanggal_Penugasan No_Kirim Tanggal Jumlah DOSEN Mengepalai PROGRAM STUDI PENGIRIMAN VENDOR No_Dosen _Dosen Relasi DOSEN No_Pelanggan Relasi Kode_Prodi _Prodi No_Dosen Tanggal_penugasan Relasi PROGRAM STUDI 37 No_Kirim Tanggal Jumlah No_Pelanggan Kode_Vendor Kode_Vendor Alamat Relasi VENDOR Relasi PENGIRIMAN 38 Pemetaan Unary 1:N Pemetaan Unary M:M No_Pegawai _Pegawai Tgl_Lahir No_Item _Item Harga_Unit PEGAWAI ITEM Mengepalai Jumlah Tersusun_atas No_Pegawai _Pegawai Tgl_lahir ID_Manajer Relasi PEGAWAI No_Item _Item Harga_Unit Relasi ITEM 39 No_Item No_Komponen Jumlah Relasi KOMPONEN 40 _Pegawai Pemetaan Hubungan Supertipe/Subtipe Alamat Pemetaan Hubungan Supertipe/Subtipe (Lanjutan ) Nomor_Pegawai PEGAWAI Tipe_Pegawai: Tgl_Mulai_Kerja d H K T PEGAWAI HARIAN PEGAWAI TETAP PEGAWAI KONTRAK Kompensasi Upah_Harian Gaji_Bulanan Tunjangan Nomor_Kontrak Lama_Kontrak 41 Model relasional tidak mendukung hubungan supertipe/subtipe secara langsung Strategi pemecahan untuk kasus di depan: 1. Buat relasi terpisah untuk masing-masing supertipe dan subtipe 2. Berikan atribut-atribut yang umum (termasuk kunci primer) ke supertipe 3. Masukkan pembeda subtipe pada supertipe 4. Tambahkan kunci primer pada supertipe ke semua subtipe 42 7

Solusi Pemetaan Hubungan Supertipe/Subtipe Nomor_Pegawai _Pegawai Alamat Tgl_Mulai_Kerja Tipe_Pegawai PEGAWAI Nomor_Pegawai Upah_Harian PEGAWAI HARIAN Nomor_Pegawai Gaji_Bulanan Tunjangan PEGAWAI TETAP Nomor_Pegawai Nomor_Kontrak Lama_Kontrak Kompensasi PEGAWAI KONTRAK 43 8