PERANCANGAN DATABASE E-R DIAGRAM 2 Pengolahan Basis Data D3-TI STMIK AMIKOM
KEKANGAN INTEGRITAS (INTEGRITY CONSTRAINT) • Tujuannya adalah untuk memfasilitasi penjagaan keakurasian dan integritas data dalam database (supaya tetap konsisten) • Macamnya:
• Kekangan domain • Integritas entitas • Integritas referensial • Kekangan operasional
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
INTEGRITAS ENTITAS • 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
INTEGRITAS REFERENSIAL • Memastikan bahwa konsistensi antara dua buah relasi tetap terjaga Keadaan Awal: Kd_Pelanggan
Nama
Kd_Kota
Kd_Kota
Nama_Kota
A001
Aditya
0501
0501
Semarang
B001
Bakdi
0502
0502
Salatiga
B002
Bramanto
0502
0503
Kendal
EFEK TANPA INTEGRITAS REFERENSIAL Keadaan Setekah data 0502 pada KOTA dihapus: 0502
Kd_Pelanggan
Nama
Kd_Kota
Kd_Kota
Salatiga
Nama_Kota
A001
Aditya
0501
0501
Semarang
B001
Bakdi
0502
0503
Kendal
B002
Bramanto
0502
Menjadi tidak konsisten
EFEK INTEGRITAS REFERENSIAL Keadaan Setekah data 0502 pada KOTA dihapus: 0502
Kd_Pelanggan
Nama
Kd_Kota
Salatiga
Kd_Kota
Nama_Kota
A001
Aditya
0501
0501
Semarang
B002
Bramanto
0503
0503
Kendal
B001
Bakdi
0502
Ikut terhapus! atau penghapusan ditolak
KEKANGAN OPERASIONAL • Kekangan yang berhubungan dengan aturan bisnis • Misalnya “Saldo tabungan tidak boleh negatif”
TRANFORMASI DIAGRAM ER/EER KE RELASI •
Memetakan Entitas Reguler (kuat)
Nama_Pelanggan
No_Pelanggan
Tipe entitas PELANGGAN PELANGGAN
No_Pelanggan Nama_Pelanggan
Alamat_Pelanggan
Alamat_Pelanggan
Relasi PELANGGAN
TRANFORMASI DIAGRAM ER KE RELASI •
Memetakan Entitas dengan Atribut Komposit
Jalan Nama_Pelanggan
Kota Kode_Pos
No_Pelanggan
PELANGGAN
No_Pelanggan Nama_Pelanggan
Alamat_Pelanggan
Jalan
Kota
Kode_Pos
Tipe entitas PELANGGAN dengan atribut komposit
Relasi PELANGGAN
TRANFORMASI DIAGRAM ER KE RELASI • Memetakan Entitas dengan Atribut Bernilai Ganda Nama_Pegawai Alamat_Pegawai
No_Pegawai
PEGAWAI
No_Pegawai
Nama_Pegawai
No_Pegawai
Keterampilan
Keterampilan
Alamat_Pegawai
Tipe entitas PEGAWAI dengan atribut bernilai ganda
Relasi PEGAWAI
Relasi KETERAMPILAN PEGAWAI
PEMETAAN ENTITAS LEMAH No_Pegawai
PEGAWAI
Nama_Pegawai
Memiliki
No_Pegawai
Nama_Pegawai
No_Pegawai
Nama_Tanggungan
Nama_Tanggungan
Tanggal_Lahir
TANGGUNGAN
Relasi PEGAWAI Tanggal_Lahir
Relasi TANGGUNGAN
PEMETAAN HUBUNGAN 1 TO M No_Pelanggan
Nama_Pelanggan
PELANGGAN
Tanggal_Pesan
Tanggal_Pesan
PESANAN
Mengirim
No_Pelanggan Nama_Pelanggan
No_Pesan
Nomor_Pesan
Relasi PELANGGAN
No_Pelanggan
Relasi PESANAN
PEMETAAN HUBUNGAN M TO M No_Pesan
Tgl_Pesan
Kode_Produk
Harga_Unit
Jumlah
PESANAN
PRODUK
Meminta
No_Pesan
Tgl_pesan
No_Pesan
Kode_Produk
Kode_Produk
Harga_Unit
Relasi PESANAN Jumlah
Relasi PRODUK
Relasi BARIS PESANAN
PEMETAAN HUBUNGAN 1 TO 1 No_Dosen
Nama_Dosen
Kode_Prodi
Nama_Prodi
Tanggal_Penugasan
DOSEN
No_Dosen
Kode_Prodi
PROGRAM STUDI
Mengepalai
Nama_Dosen
Nama_Prodi
Relasi DOSEN
No_Dosen
Tanggal_penugasan
Relasi PROGRAM STUDI
PEMETAAN ENTITAS ASOSIATIF (TERNARY) No_Pelanggan
Nama
Kode_Vendor
Tanggal
No_Kirim
PELANGGAN
No_Pelanggan
No_Kirim Kode_Vendor
Alamat
Jumlah PENGIRIMAN
Nama
Tanggal Alamat
VENDOR
Relasi PELANGGAN
Jumlah No_Pelanggan Kode_Vendor
Relasi VENDOR
Relasi PENGIRIMAN
PEMETAAN UNARY 1:N Nama_Pegawai Tgl_Lahir
No_Pegawai
PEGAWAI
Mengepalai
No_Pegawai
Nama_Pegawai
Tgl_lahir
ID_Manajer
Relasi PEGAWAI
PEMETAAN UNARY M:M Nama_Item Harga_Unit
No_Item ITEM
Jumlah
Tersusun_atas
No_Item
Nama_Item
Harga_Unit
No_Item
No_Komponen
Jumlah
Relasi ITEM
Relasi KOMPONEN
CONTOH SOAL SEBELUMNYA Rancanglah diagram E-R dari kasus aplikasi database Sederhana untuk sistem informasi akademis suatu universitas. Dengan ketentuan sebagai berikut : • mahasiswa: menyimpan semua informasi pribadi mengenai semua mahasiswa, yaitu : NPM, Nama Mahasiswa dan Alamat • dosen: menyimpan semua informasi pribadi mengenai semua dosen, yaitu : NIK, Nama Dosen dan Alamat Dosen • mata_kuliah: menyimpan semua informasi mengenai semua mata kuliah yang ditawarkan, yaitu : Kode Mata Kuliah, Nama Mata Kuliah dan Deskripsi • ruang: menyimpan semua informasi mengenai ruang kelas yang akan digunakan, yaitu: Kode ruang, lokasi ruang dan kapasitas
ASUMSI HUBUNGANNYA • Ruang digunakan untuk mata_kuliah • Dosen mengajar mata_kuliah • Mahasiswa mengambil mata_kuliah • Dosen membimbing mahasiswa