DIAGRAM ER dalam Notasi Lain Kuliah 04
TIU Mengetahui Bentuk Derajat Kardinalitas Relasi minimum dan maksimum yang harus kita sertakan pada pembentukan relasi antar entitas. TIK Mengimplementasikan Hasil Rancangan Basisdata dari Penyajian Bentuk Derajat Kardinalitas Relasi minimum dan maksimum
Derajat/kardinalitas relasi mewakili hubungan maksimum yang terjadi antara satu entitas terhadap entitas lain. Disamping itu, ada pula yang disebut derajat relasi minimum, yang menunjukkan hubungan minimum yang boleh terjadi dalam sebuah relasi antar entitas.
Derajat Relasi Minimum-Maksimum
Alternative ER Notations Chen IDE1FX (Crows feet notation)
CONTOH nim nama Tgl_lhr Nama KdMK nip alamat Gelar SKS semester MAHASISWA nama Tgl_lhr (0,N) ambil Nama KdMK nip alamat (0,N) MATAKULIAH ajar DOSEN Gelar (0,N) (1,1) SKS semester Nama_mk
Seorang Mahasiswa boleh mengambil banyak matakuliah sekaligus, demikian pula sebaliknya. Tetapi boleh juga seorang mahasiswa tidak mengambil matakuliah satupun (karena cuti misalnya). Sehingga derajat minimum 0 terjadi pada entitas mahasiswa. Satu atau beberapa matakuliah bisa di ambil oleh banyak mahasiswa, dan dapat pula terjadi sebuah matakuliah tidak diikuti oleh mahasiswa manapun (misalnya, karena merupakan matakuliah pilihan), sehingga derajat relasi minimum 0 terjadi pada entitas matakuliah.
Seorang dosen boleh mengajar banyak matakuliah sekaligus, tetapi bisa juga belum/tidak mengajar satu matakuliahpun. Derajat relasi minimum 0 pada entitas matakuliah. Setiap matakuliah hanya boleh di ajarkan oleh seorang dosen dan tidak boleh ada matakuliah yang belum/tidak di tentukan siapa dosennya. Derajat relasi minimum 1 pada entitas dosen.
Tahap pembuatan Diagram ER awal Menentukan entitas yang terlibat. Menentukan atribut-atribut dari masing-masing entitas beserta primary-key nya. Mengidentifikasi dan menetapkan seluruh himpunan relasi di antara himpunan entitas-himpunan entitas yang ada. Menentukan derajat/kardinalitas dan modalitas relasi untuk setiap himpunan relasi. Melengkapi himpunan entitas dan himpunan relasi dengan atribut foreign-key beserta atribut-atribut deskriptif (non key).
Tahap Optimasi ER-Diagram (Final Design) Melakukan koreksi terhadap hasil tahap pertama: Melakukan dekomposisi entitas, Penggabungan entitas, Pengubahan derajat relasi, Penambahan relasi baru, dan Perubahan atribut.
Bagaimana melakukan koreksi ? Kembali melihat sumber-sumber informasi : Form, Report, Hasil interview dengan user dan pemilik sistem. Data dan informasi yang dikumpulkan (Requirement) Dan lain lain. Memastikan bahwa semua struktur dalam ERD yang telah dibuat telah memenuhi kebutuhan (requirement) sistem.
Problem Database Kontraktor Sebuah perusahaan memiliki beberapa departemen. Setiap departemen dikepalai oleh seorang manajer dan Departemen setidaknya memiliki satu atau lebih pegawai. Perusahaan ini memiliki pegawai tetap dan pegawai harian untuk menangani dan menyelesaikan beberapa proyek. Satu pegawai bekerja hanya di satu departemen. seorang pegawai bisa mengerjakan beberapa proyek sesuai dengan penugasan, kecuali pegawai yang sedang cuti tidak mengerjakan satupun proyek. Tanggal pegawai mulai bekerja pada satu proyek juga harus dimasukkan. Satu proyek minimal melibatkan satu pegawai.
Data keluarga pegawai juga dimasukkan untuk keperluan tertentu Data keluarga pegawai juga dimasukkan untuk keperluan tertentu. Data tersebut : nama, status. Dengan ketentuan : satu pegawai bisa memiliki Nol atau lebih keluarga, dan satu keluarga hanya memiliki satu anggota keluarga yang bekerja sebagai pegawai. Beberapa data penting yang dibutuhkan adalah nama departemen, nama dan lokasi proyek, nama manajer dan daftar pegawai.
Beberapa hal yang ditemukan : Penggabungan entitas Manajer dengan Pegawai, karena : Manajer juga termasuk pegawai Entitas Pegawai dengan Manajer memiliki jenis/tipe atribut yang sama. Entitas Pegawai dengan Manajer sama-sama memiliki relasi dengan entitas Departemen.
Pada data Pegawai tetap : Memiliki NIP Memiliki data keluarga (OrTu | Suami | Istri | Anak) Pada data pegawai kontrak : Tidak memiliki NIP Ada masa kontrak, merupakan atribut komposit , masih dapat diuraikan lagi menjadi tanggal_mulai_kontrak dan tanggal_akhir_kontrak Ada nilai kontrak Dekomposisi entitas Pegawai menjadi dua, yaitu : Pegawai tetap dan Pegawai Kontrak.
mengepalai memiliki kerja memiliki Id_dep (1,1) Departemen Nm_dep (1,1) mengepalai memiliki (1,1) Nm_Peg Alm_Peg Nm_Pry Tgl_Lhr_Peg Tgl_kerja Kd_Pry Lks_Pry Kd_Peg Jabatan (0,n) (1,n) Pegawai (1,n) kerja Proyek Tgl_awal Tgl_akhir NIP Nm_kel status Nilai_kontrak masakontrak (1,1) (0,1) Pegawai Kontrak Pegawai Tetap memiliki Keluarga
Implementasi Ke Bentuk Tabel TABEL PEGAWAI TABEL PEGAWAI KONTRAK
TABEL PEGAWAI TETAP TABEL TANGGUNGAN PEGAWAI TETAP TABEL DEPARTEMENT
Implementasi Ke Bentuk Tabel TABEL PROYEK TABEL KERJA PEGAWAI-PROYEK
ORANG TUA HOBY punya senangi MAHASISWA ambil MATAKULIAH RUANG daftar ajar JURUSAN miliki DOSEN
Kelompokfilm jenis harga_sewa Film kode_film judul jml_film jml_keping dikelompokkan Customer no_identitas jenis_identitas nama alamat menyewa tgl_sewa total_film total_harga denda tgl_kembali kode_sewa
ANGGOTA BUKU PETUGAS pinjam mendata
TRANSFORMASI MODEL DATA ER ke BASIS DATA
TIU Memahami Cara Transformasi Model Data yang dinyatakan dalam diagram ER ke dalam basisdata fisik. TIK Menyajikan Transformasi Model Data, dan Implementasinya ke dalam bentuk tabel
Implementasi Basis Data Setiap entitas akan di implementasikan sebagai sebuah tabel (file data) Nama_mk KdMK MATAKULIAH TABEL MATA KULIAH SKS semester 26
Implementasi Himpunan Entitas Lemah punya TANGGUNGAN 1 PEGAWAI 1 n miliki SKILL TABEL SKILL TABEL TANGGUNGAN
Implementasi Sub Entitas Hasil dari Spesialisasi DOSEN ISA DOSENTETAP DOSEN TDK TETAP nik nama Kd_dsn alamat jabatan Tgl_masuk Nama_kantor alamat_kantor nohp … Gaji_bulanan Gaji_harian Tgl_gajian
TABEL DOSEN TABEL DOSEN TETAP TABEL DOSEN TDK TETAP
Contoh lain spesialisasi Id_pasien alamat nama nohp PASIEN Tgl_daftar … ISA Tgl_cek_kembali PASIEN RAWAT INAP PASIEN BEROBAT JALAN Tgl_keluar
TABEL PASIEN TABEL PASIEN BEROBAT JALAN TABEL PASIEN RAWAT INAP
Implementasi Generalisasi MAHASISWA ISA MAHASISWA D3 MAHASISWA S1 nama nim alamat Tgl_lahir … TABEL MAHASISWA
Relasi dengan derajat 1-1 yang menghubungkan 2 buah entitas akan direpresentasikan dalam bentuk penambahan/penyertaan atribut relasi ke tabel yang mewakili salah satu dari kedua himpunan entitas. HASIL 33
Field yang ditambahkan dari entitas mahasiswa ORANG TUA 1 punya Field yang ditambahkan dari entitas mahasiswa 1 MAHASISWA 34
Relasi dengan derajat relasi 1-N (satu ke banyak) yang menghubungkan 2 buah entitas, juga akan direpresentasikan dalam bentuk pencantuman atribut key dari himpunan entitas pertama (yang berderajat 1) ke tabel entitas kedua (yang berderajat N). HASIL 35
MAHASISWA daftar JURUSAN miliki DOSEN 1 1 n JURUSAN miliki DOSEN 36
Relasi dengan derajat N-M yang menghubungkan 2 buah entitas akan diwujudkan dalam bentuk tabel khusus. Dimana memiliki field (tepatnya foreign key) yang berasal dari primary key dari entitas yang dihubungkan, dengan menyertakan atribut tambahan bila ada. HASIL 37
nilai n m MAHASISWA ambil MATAKULIAH TABEL MHSW-MK 38
Implementasi Relasi Tunggal 1-1 nohp nama Nik_pasangan Nik_karyawan 1 Menikah … KARYAWAN 1 alamat TABEL KARYAWAN
Implementasi Relasi Tunggal 1-N nohp nama Nik_supervisor Nik_karyawan 1 KARYAWAN kontrol N TABEL KARYAWAN
Implementasi Relasi Tunggal N-M sks nama Kd_mk_prasyarat Kd_mk N Kuliah prasyarat semester MATA KULIAH M TABEL MK PRASYARAT TABEL MATA KULIAH
Implementasi Multi Entitas Id_supplier nama alamat Cara_pengiriman lokasi nama n 1 GUDANG SUPPLIER Sedia tgl_kirim … m Id_ruang KOMPONEN … Id_komponen nama
TABEL SUPPLIER TABEL GUDANG TABEL KOMPONEN TABEL PERSEDIAAN
Contoh lain Multi Entitas nama nama Id_pasien … hasil tanggal n n DOKTER PASIEN Resep … Nip_dokter n OBAT … Id_obat nama
TABEL PASIEN TABEL DOKTER TABEL OBAT TABEL RESEP
Implementasi Relasi Ganda mengajar Kd_mk nip n 1 nama MATAKULLIAH DOSEN m n … … nama Menguasai
TABEL DOSEN TABEL MATA KULIAH TABEL MENGUASAI
Implementasi Agregasi MAHASISWA nama nim MATA KULIAH PRAKTIKUM mempelajari Mengikuti n m Index_nilai nilai Kd_prak Jlh_jam
TABEL MEMPELAJARI TABEL PRAKTIKUM TABEL MENGIKUTI
SEKIAN TERIMA KASIH