TUGAS PRAKTIKUM CDM, PDM, DAN DATABASE
LAPORAN Disusun sebagai Tugas pada Mata Kuliah Basis Data Oleh : Arof Arto Perdana
14101007
Edwin Satria
14102018
Faisal Yudo Hernawan 14102019 Ros Novia Citra Devi 14102038 PROGRAM STUDI INFORMATIKA SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM PURWOKERTO 2015
EVALUASI DAN PERTANYAAN 1. Apakah perbedaan CDM,PDM dan ERD ? ERD kepanjangan dari Entitas Relationship Diagram. ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi. ERD untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol. Sedangkan CDM singkatan dari Conseptual Data Model. CDM dipakai untuk menggambarkan secara detail struktur basis data dalam bentuk logik. Struktur ini independen terhadap semua software maupun struktur data storage tertentu yang digunakan dalam aplikasi ini. Sedangkan PDM kepanjangan dari Physical Data Model. PDM merupakan gambaran secara detail basis data dalam bentuk fisik. Penggambaran rancangan PDM memperlihatkan struktur penyimpanan data yang benar pada basis data yang digunakan sesungguhnya. 2. Mengapa Perlu melakukan desain database ?
Kecepatan dan kemudahan Database memiliki kemampuan dalam menyeleksi data, sehingga menjadi kelompok yang terurut dengan cepat. Hal ini yang dapat menghasilkan informasi secara cepat juga.
Pemakaian bersama-sama Database ini juga dapat digunakan oleh siapa saja dalam suatu perusahaan. Contohnya database mahasiswa dalam suatu perguruan tinggi dibutuhkan oleh beberapa bagian, seperti bagian admin, bagian keuangan, bagian akademik. Ke semua bidang tersebut membutuhkan database mahasiswa namun tidak perlu masing-masing bagian membuat databasenya sendiri, cukup database mahasiswa satu saja yang disimpan di server pusat. Nanti aplikasi dari masingmasing bagian bisa terhubung ke database mahasiswa tersebut.
Kontrol data terpusat Hal ini dapat mempermudah pengontrolan data. Contohnya ingin mengupdate data mahasiswa, maka kita hanya perlu mengupdate semua data di masingmasing bagian atau divisi, tetapi hanya cukup meliahat di satu database saja yang terdapat di server pusat.
Menghemat biaya perangkat Dengan memiliki database secara terpusat maka masing-masing divisi tidak harus memiliki perangkat untuk menyimpan database, karena database tersebut sudah di simpan di server pusat. Hal ini tentunya dapat memangkas pembelian perangkat.
Keamanan Data Hampir semua Aplikasi manajemen database sekarang memiliki fasilitas manajemen pengguna. Manajemen pengguna ini mampu membuat hak akses yang berbeda-beda disesuaikan dengan kepentingan maupun posisi pengguna. Selain itu data yang tersimpan di database diperlukan password untuk mengaksesnya.
Memudahkan dalam pembuatan aplikasi baru
STUDI KASUS Conceptual Data Model (CDM) Membuka software PowerDesigner, kemudian klick new project setelah itu pilih conceptual diagram.
Setelah tampil layar putih, maka pilih icon entity untuk membuat entitas entitas.
Pembuatan tabel karyawan
Attribute dari tabel karyawan, pada field kode_karyawan diberi primary key dan mandatory.
Pembuatan tabel gaji.
Attribute dari tabel gaji, pada field kode_gaji diberi primary key dan mandatory.
Pembuatan tabel transaksi.
Atrribute dari tabel transaksi, pada field kode_transaksi diberi primary key dan mandatory.
Pembuatan tabel jabatan.
Attribute dari tabel jabatan, pada field kode_jabatan diberi primary key dan mandatory.
Pembuatan tabel item_penjualan
Attribute dari tabel item_penjualan, pada id_penjualan diberi primary key
Pembuatan tabel member.
Attribute dari tabel ,ember,pada field kode_member diberi primary dan mandatory.
Pembuatan tabel menu.
Attribute dari tabel menu, pada kode_menu diberi primary key dan mandatory.
Relationship Untuk membuat relasi pilih icon relationship
Karyawan mempunyai jabatan relasinya many to one. Karyawan memiliki gaji relasinya one to one. Karyawan melayani transaksi relasinya one to many. Transaksi menghitung setiap item penjualan relasinya one to many. Item penjualan mengambil data dari tabel menu relasinya many to one. Transaksi melakukan pengecekan data member yang terdaftar relasinya many to one.
Untuk melakukan pengecekan error atau tidaknya suatu CDM maka dengan cara F4 lalu muncul kotak dialog dibawah ini, jika isi nya kosong, maka tidak terjadi error.
Generate Physical Data Model (PDM) Untuk menghasilkan physical data model maka dapat dipilih menu tools -> Generate Physical Data Model
Maka akan muncul kotak dialog PDM Generations Options seperti tampilan dibawah ini.
Pada tab detail tambahkan tbl_ pada table prefix, kemudian rubah update rule dan delete rule menjadi cascade. Gunanya agar bisa dilakukan delete maupun update pada tiap relasinya.
Setelah di apply dan ok, maka akan tampil seperti gambar dibawah ini.
Generate Database Pilih database kemudian klick generate database.
Pada DBMS rubah ke mysql 5.0 karena kami menggunakan database mysql versi 5.
Query Database /*=========================================================== ===*/ /* DBMS name: MySQL 5.0 */ /* Created on: 22/12/2015 11:50:11 */ /*=========================================================== ===*/ drop table if exists TBL_GAJI; drop table if exists TBL_ITEM_PENJUALAN; drop table if exists TBL_JABATAN; drop table if exists TBL_KARYAWAN; drop table if exists TBL_MEMBER; drop table if exists TBL_MENU; drop table if exists TBL_TRANSAKSI; /*=========================================================== ===*/ /* Table: TBL_GAJI */ /*=========================================================== ===*/ create table TBL_GAJI ( KODE_GAJI int not null, KODE_KARYAWAN int not null, GAJI int,
primary key (KODE_GAJI) ); /*=========================================================== ===*/ /* Table: TBL_ITEM_PENJUALAN */ /*=========================================================== ===*/ create table TBL_ITEM_PENJUALAN ( ID_PENJUALAN int not null, KODE_TRANSAKSI int not null, KODE_MENU int not null, HARGA_PER_ITEM int, KUANTITAS_PER_ITEM int, JUMLAH_HARGA_PER_ITEM int, primary key (ID_PENJUALAN) ); /*=========================================================== ===*/ /* Table: TBL_JABATAN */ /*=========================================================== ===*/ create table TBL_JABATAN ( KODE_JABAATAN int not null, NAMA_JABATAN text, primary key (KODE_JABAATAN) ); /*=========================================================== ===*/ /* Table: TBL_KARYAWAN */ /*=========================================================== ===*/ create table TBL_KARYAWAN ( KODE_KARYAWAN int not null, KODE_JABAATAN int not null, KODE_GAJI int,
NAMA_KARYAWAN text, ALAMAT_KARYAWAN text, TANGGAL_LAHIR_KARYAWAN date, NOMOR_HP_KARYAWAN numeric(8,0), JENIS_KELAMIN_KARYAWAN text, primary key (KODE_KARYAWAN) ); /*=========================================================== ===*/ /* Table: TBL_MEMBER */ /*=========================================================== ===*/ create table TBL_MEMBER ( KODE_MEMBER int not null, NAMA_MEMBER text, EMAIL_MEMBER text, NO_HP_MEMBER numeric(8,0), ALAMAT_MEMBER text, TGL_LAHIR_MEMBER date, JENIS_KELAMIN_MEMBER text, primary key (KODE_MEMBER) ); /*=========================================================== ===*/ /* Table: TBL_MENU */ /*=========================================================== ===*/ create table TBL_MENU ( KODE_MENU int not null, NAMA_MENU text, HARGA_MENU int, DESKRIPSI_MEU text, primary key (KODE_MENU) ); /*=========================================================== ===*/
/* Table: TBL_TRANSAKSI */ /*=========================================================== ===*/ create table TBL_TRANSAKSI ( KODE_TRANSAKSI int not null, KODE_KARYAWAN int not null, KODE_MEMBER int not null, TANGGAL_TRANSAKSI date, DISKON float, TOTAL_HARGA_SELURUHNYA float, primary key (KODE_TRANSAKSI) ); alter table TBL_GAJI add constraint FK_MEMILIKI foreign key (KODE_KARYAWAN) references TBL_KARYAWAN (KODE_KARYAWAN) on delete cascade on update cascade; alter table TBL_ITEM_PENJUALAN add constraint FK_MENGAMBIL foreign key (KODE_MENU) references TBL_MENU (KODE_MENU) on delete cascade on update cascade; alter table TBL_ITEM_PENJUALAN add constraint FK_MENGHITUNG foreign key (KODE_TRANSAKSI) references TBL_TRANSAKSI (KODE_TRANSAKSI) on delete cascade on update cascade; alter table TBL_KARYAWAN add constraint FK_MEMILIKI2 foreign key (KODE_GAJI) references TBL_GAJI (KODE_GAJI) on delete cascade on update cascade; alter table TBL_KARYAWAN add constraint FK_MEMPUNYAI foreign key (KODE_JABAATAN) references TBL_JABATAN (KODE_JABAATAN) on delete cascade on update cascade; alter table TBL_TRANSAKSI add constraint FK_MELAKUKAN foreign key (KODE_MEMBER) references TBL_MEMBER (KODE_MEMBER) on delete cascade on update cascade; alter table TBL_TRANSAKSI add constraint FK_MELAYANI foreign key (KODE_KARYAWAN) references TBL_KARYAWAN (KODE_KARYAWAN) on delete cascade on update cascade;
Import Database Buka phpmyadmin, dan buat database toko.
Pilih tab import, pada choose file pilih file toko.sql kemudian klick go.
Berikut adalah hasil setelah diimport pada database toko menggunakan DBMS MySql versi 5.