Dalam membangun sistem penyewaan mobil yang efisien, desain basis data yang tepat sangat penting. Artikel ini akan membahas diagram Entity-Relationship (ER) dan Enhanced Entity-Relationship (EER) dari sistem penyewaan mobil, yang mencakup entitas seperti customer, mobil, penyewa, dan sewa.
Analisis Diagram ERD
Diagram ERD yang ditampilkan menunjukkan hubungan antara entitas kunci:
- Customer: Entitas ini memiliki atribut 'no_ktp' (sebagai primary key), 'nama', 'alamat', dan 'no_telepon'. Hubungannya dengan entitas lain ditunjukkan dengan relasi 'menyewa'.
- Mobil: Entitas ini memiliki atribut 'kode_mobil' (sebagai primary key), 'jenis_mobil', 'tahun_mobil', dan 'harga_sewa'. Relasi 'menyewa' menunjukkan bahwa mobil dapat disewakan oleh customer.
- Penyewa: Relasi ini menunjukkan hubungan antara entitas 'customer' dan 'mobil'. Relasi ini digunakan untuk mencatat data sewa dari customer terhadap mobil tertentu.
- Sewa: Entitas ini berisi atribut 'no_sewa' (sebagai primary key), 'tgl_sewa', 'tgl_kembali', dan 'denda'. Relasi 'registrasi' menghubungkan entitas 'penyewa' dengan entitas 'sewa', menunjukkan bahwa penyewa mendaftarkan transaksi sewa tertentu.
Gambar 1.2 EERD rental mobil
Analisis Diagram EERD
Diagram EERD memperjelas hubungan relasional dengan penambahan detail:
- Customer memiliki relasi ke tabel 'penyewa' melalui atribut 'no_ktp'.
- Mobil terhubung dengan entitas 'penyewa' melalui atribut 'kode_mobil'.
- Sewa memiliki relasi dengan entitas 'penyewa' melalui atribut 'customer_no_ktp' dan 'mobil_kode_mobil' sebagai foreign key.
Model Relasional Basis Data
Berikut adalah representasi tabel dalam model relasional:
- Tabel customer: Memuat data 'no_ktp' (INT, primary key), 'nama' (VARCHAR), 'alamat' (TEXT), dan 'no_telepon' (VARCHAR).
- Tabel mobil: Menyimpan 'kode_mobil' (INT, primary key), 'jenis_mobil' (VARCHAR), 'tahun_mobil' (INT), dan 'harga_sewa' (DECIMAL).
- Tabel penyewa: Menghubungkan 'customer_no_ktp' (foreign key) dan 'mobil_kode_mobil' (foreign key) untuk menunjukkan relasi sewa antara customer dan mobil.
- Tabel sewa: Berisi informasi 'no_sewa' (INT, primary key), 'tgl_sewa', 'tgl_kembali', 'denda', serta foreign key 'penyewa_customer_no_ktp' dan 'penyewa_mobil_kode_mobil' untuk merujuk pada tabel 'penyewa'.
Beri Komentar
Belum ada komentar. Jadilah yang pertama untuk memberikan komentar!