Anda di halaman 1dari 22

MODUL PRAKTIKUM

MANAJEMEN DATA

SEMESTER GENAP - 2018/2019

MODUL PRAKTIKUM MANAJEMEN DATA SEMESTER GENAP - 2018/2019 DISUSUN OLEH: Puspita Kencana Sari S.Kom, MTI Dr.

DISUSUN OLEH:

Puspita Kencana Sari S.Kom, MTI

Dr. Adhi Prasetio ST, MM

PROGRAM STUDI MANAJEMEN BISNIS TELEKOMUNIKASI DAN INFORMATIKA

FAKULTAS EKONOMI DAN BISNIS

UNIVERSITAS TELKOM

DAFTAR ISI

Modul 1. Pemodelan Entity-Relationship Diagram

2

Modul 2. Dasar-dasar Structured Query Language (SQL)

8

Modul 3. Penggunaan SQL untuk Sistem Database

14

1

MODUL

DIAGRAM (ERD)

1.

PEMODELAN

ENTITY

-

RELATIONSHIP

Pada pemodelan Entity-Relationship Diagram ini akan menggunakan software EDraw Max 9.3. Untuk menjalankannya lakukan tahapan berikut.

Buka program Edraw Max

Pilih tempale Database > Chen ERD > Create. Selanjutnya akan tampil bidang gambar seperti berikut.

Selanjutnya akan tampil bidang gambar seperti berikut. Gambar 1.1. Tampilan Media Gambar pada Software Edraw Max

Gambar 1.1. Tampilan Media Gambar pada Software Edraw Max 9.3

Untuk menggambar Entitas, klik icon ‘Entity’ dan drag ke area gambar.

Untuk menggambar Relasi, klik icon ‘Relationship’ dan drag ke area gambar.

Untuk menggambar Atribut, klik icon ‘Attribute’ dan drag ke area gambar.

Untuk menghubungkan Entitas dan Atribut atau Entitas dan Relasi, klik icon ‘Line connector’ dan drag ke area gambar. Untuk Relasi dengan total-participation, klik icon ‘Double line connector’. Lalu hubungkan diantara Relasi dan Enitias terkait.

Untuk menambahkan cardinality ratio (1:1, 1:M, M:N), klik icon ‘One to one caption’, ‘One to many caption’ atau ‘Many to many caption

2

Hasilnya akan didapatkan diagram seperti Gambar 1.2 berikut ini.

akan didapatkan diagram seperti Gambar 1.2 berikut ini. Gambar 1.2. Struktur ER Diagram 1. Untuk menggambarkan

Gambar 1.2. Struktur ER Diagram

1. Untuk menggambarkan Extended-ER Diagram, hubungan antara entitas Supertype dan entitas Subtype menggunakan simbil “IS-A” relationship.

2. Untuk menambahkan “IS-A” relationship, buka Library “Martin ERD” kemudian klik icon ‘Connection’ dan drag ke area gambar. Lalu hubungkan entitas Supertype dan Subtype ke “IS-A” relationship dengan menggunakan ikon ‘Line Connector’ pada Library “Chen ERD”.

3. Hasilnya akan didapatkan diagram seperti Gambar 1.3 berikut ini.

akan didapatkan diagram seperti Gambar 1.3 berikut ini. Gambar 1.3. Struktur Extended-ER Diagram Pada modul ini

Gambar 1.3. Struktur Extended-ER Diagram

Pada modul ini kita akan mempelajari cara untuk menggambar ERD untuk Basisdata Universitas seperti pada Gambar 1.4 berikut ini.

3

Gambar 1.4. ERD untuk Basisdata Universitas (Sumber: Codewalkers.com) Langkah-langkah: 1) 2) 3) 4) Setelah area

Gambar 1.4. ERD untuk Basisdata Universitas (Sumber: Codewalkers.com)

Langkah-langkah:

1)

2)

3)

4)

Setelah area gambar siap dan simbol-simbol Chen ERD muncul, mulailah menggambar Entitas dan atribut-atributnya. Klik icon ‘Entity’, drag ke area gambar. Klik dua kali di gambar Entitas, ganti nama Entitas menjadi ‘Student’. Selanjutnya Klik icon ‘Atribut’, drag ke area gambar. Klik dua kali di gambar Atribut, ganti nama Atribut menjadi ‘GivenNames’. Lakukan hal yang sama untuk menggambarkan atribut- atribut yang lain dari Entitas ‘Student’. Untuk menggambarkan atribut Primary Key, klik gambar Atribut key (‘Student_ID’) kemudian klik icon berwarna biru yang muncul di kanan atas gambar (seperti pada Gambar 1.5), pilih ‘Key Attribute’.

(seperti pada Gambar 1.5) , pilih ‘Key Attribute’. Gambar 1.5. Mengubah Simple Attribute Menjadi Key

Gambar 1.5. Mengubah Simple Attribute Menjadi Key Attribute

5)

6)

Selanjurnya hubungkan atribut-atribut tersebut dengan Entitas ‘Student’ menggunakan icon ‘Line connector’ Hasil yang didapatkan seperti Gambar 1.6 berikut.

4

Gambar 1.6. Entitas ‘Student’ Dilengkapi dengan Atributnya 7) 8) Lakukan langkah- langkah diatas untuk menggambarkan

Gambar 1.6. Entitas ‘Student’ Dilengkapi dengan Atributnya

7)

8)

Lakukan langkah-langkah diatas untuk menggambarkan Entitas ‘Program’ beserta atribut- atributnya.

Untuk menggambarkan Weak Entity, klik gambar Entitas yang sudah di-drag ke area gambar. Klik icon berwarna biru, lalu pilih ‘Independent Entity’. Seperti pada Gambar 1.7 berikut.

‘Independent Entity’. Seperti pada Gambar 1.7 berikut. Gambar 1.7. Mengubah Simple Entity menjadi Weak Entity 9)

Gambar 1.7. Mengubah Simple Entity menjadi Weak Entity

9)

10) Untuk menggambarkan Weak Relationship, klik gambar ‘Relationship’ yang ada di area gambar, lalu klik icon berwarna biru dan pilih ‘Weak Relationship’. Seperti pada Gambar 1.8

Untuk menggambarkan Relationship, klik icon ‘Relationship’ lalu drag ke area gambar.

berikut.

icon ‘Relationship’ lalu drag ke area gambar. berikut. Gambar 1.8. Mengubah Simple Relationship menjadi Weak

Gambar 1.8. Mengubah Simple Relationship menjadi Weak Relationship

11) Untuk menambahkan Cardinality Ratio dari masing-masing relationship, maka klik ‘One to one caption’, ‘One to many caption’ atau ‘Many to many’ dan drag di dekat garis terkait. Maka akan didapatkan seperti Gambar 1.9 berikut.

garis terkait. Maka akan didapatkan seperti Gambar 1.9 berikut. Gambar 1.9. Menambahkan Cardinality Ratio pada ERD

Gambar 1.9. Menambahkan Cardinality Ratio pada ERD

5

12) Setelah semua selesai, maka akan didapatkan ER diagram seperti pada Gambar 1.10 berikut di area gambar EDraw

seperti pada Gambar 1.10 berikut di area gambar EDraw Gambar 1.10. Hasil Gambar ERD Basisdata Universitas

Gambar 1.10. Hasil Gambar ERD Basisdata Universitas Menggunakan EDraw Max

6

LATIHAN

Gambarlah EERD Hospital Database berikut ini menggunakan software Edraw Max.

Database berikut ini menggunakan software Edraw Max. Gambar 1.10. EER Diagram untuk Hospital Database (Sumber:

Gambar 1.10. EER Diagram untuk Hospital Database (Sumber: https://static.daniweb.com/attachments/3/EER_Diagram.jpg)

7

MODUL 2. DASAR-DASAR SQL

Pada praktikum lab ini kita akan membuat tabel di DBMS MySQL dari tabel relasional pada COMPANY Database berikut ini.

dari tabel relasional pada COMPANY Database berikut ini. Gambar 2.1. Database State pada Basisdata COMPANY

Gambar 2.1. Database State pada Basisdata COMPANY (Sumber: Elmasri & Navathe, 2011)

Untuk mengimplementasikan Database State seperti Gambar 2.1 di atas, langkah pertama yang dilakukan adalah membuat struktur database menggunakan perintah SQL yaitu Data Definition Language terutama perintah CREATE DATABASE dan CREATE TABLE. Langkah berikutnya adalah meng-input tuples yang ada pada masing-masing tabel dengan menggunakan perintah Data Manipulation Language, terutama perintah INSERT.

8

A. Data Definition Language (DDL)

DDL yang akan dipelajari disini terdiri atas:

1)

CREATE DATABASE

2)

DROP DATABASE

3)

CREATE TABLE

4)

DROP TABLE

5)

ALTER TABLE

1. CREATE DATABASE

Untuk membuat database COMPANY, ketik perintah berikut pada tab SQL di DBMS

CREATE DATABASE company;

2. DROP DATABASE

Untuk menghapus database COMPANY, ketik perintah berikut pada tab SQL di DBMS

DROP DATABASE company;

3. CREATE TABLE

Untuk membuat tabel-tabel dari skema diatas dari database COMPANY, gunakan perintah- perintah di bawah ini:

CREATE TABLE EMPLOYEE

(Fname

VARCHAR(15)

NOT NULL,

Minit

CHAR,

Lname

VARCHAR(15)

NOT NULL,

Ssn

CHAR(9)

NOT NULL,

Bdate

DATE,

Address

VARCHAR(30),

Sex

CHAR,

Salary

DECIMAL(10,2),

Super_ssn

CHAR(9),

Dno

INT

NOT NULL,

PRIMARY KEY(Ssn), FOREIGN KEY(Super_ssn) REFERENCES EMPLOYEE(Ssn));

CREATE TABLE DEPARTMENT

9

(Dname VARCHAR(15)

NOT NULL,

Dnumber

INT

NOT NULL,

Mgr_ssn

CHAR(9)

NOT NULL,

Mgr_start_date DATE, PRIMARY KEY(Dnumber), FOREIGN KEY(Mgr_ssn) REFERENCES EMPLOYEE(Ssn) );

CREATE TABLE DEPT_LOCATIONS

(Dnumber

INT

NOT NULL,

Dlocation VARCHAR(15)

NOT NULL,

PRIMARY KEY(Dnumber, Dlocation), FOREIGN KEY(Dnumber) REFERENCES DEPARTMENT(Dnumber) );

CREATE TABLE PROJECT

(Pname

VARCHAR(15)

NOT NULL,

Pnumber

INT

NOT NULL,

Plocation

VARCHAR(15),

Dnum

INT

NOT NULL,

PRIMARY KEY(Pnumber), FOREIGN KEY(Dnum) REFERENCES DEPARTMENT(Dnumber) );

CREATE TABLE WORKS_ON

(Essn

CHAR(9)

NOT NULL,

Pno

INT

NOT NULL,

Hours

DECIMAL(3,1)

NOT NULL,

PRIMARY KEY(Essn, Pno), FOREIGN KEY(Essn) REFERENCES EMPLOYEE(Ssn), FOREIGN KEY(Pno) REFERENCES PROJECT(Pnumber) );

CREATE TABLE DEPENDENT

(Essn

CHAR(9)

NOT NULL,

Dependent_name

VARCHAR(15)

NOT NULL,

Sex

CHAR,

Bdate

DATE,

Relationship VARCHAR(8), PRIMARY KEY(Essn, Dependent_name), FOREIGN KEY(Essn) REFERENCES EMPLOYEE(Ssn) );

10

4.

DROP TABLE

Untuk menghapus salah satu tabel di Database COMPANY, misalnya kita akan menghapus tabel DEPENDENT, gunakan perintah berikut:

DROP TABLE Dependent;

5.

ALTER TABLE

Untuk menambahkan Foreign Key ‘Dno’ pada table EMPLOYEE, gunakan perintah berikut.

 

ALTER TABLE employee ADD FOREIGN KEY(Dno) REFERENCES DEPARTMENT(Dnumber);

Untuk menambahkan kolom/field STATE pada Tabel EMPLOYEE untuk mencatat status dari pegawai, gunakan perintah berikut.

 

ALTER TABLE employee ADD COLUMN state VARCHAR (10);

B.

Data Manipulation Language (DML)

DML yang akan dipelajari disini terdiri atas:

 

1)

INSERT

2)

UPDATE

3)

DELETE

4)

SELECT

1.

INSERT

Untuk menambahkan record pada tabel-tabel yang ada di database COMPANY, gunakan perintah berikut ini.

INSERT INTO employee (Fname, Minit, Lname, Ssn, Bdate, Address, Sex, Salary, Dno) VALUES ('John', 'B', 'Smith', '123456789', '1965-01-09', '731 Fondren, Houston, TX', 'M', '30000', '5');

INSERT INTO department(Dname, Dnumber, Mgr_ssn, Mgr_start_date) VALUES ('Research', '5', '333445555', '1988-05-22');

11

INSERT INTO dept_locations(Dnumber, Dlocation) VALUES ('1', 'Houston');

INSERT INTO project(Pname, Pnumber, Plocation, Dnum) VALUES ('ProductX', '1', 'Bellaire', '5');

INSERT INTO works_on(Essn, Pno, Hours) VALUES ('123456789', '1', '32.5');

INSERT INTO dependent(Essn, Dependent_name, Sex, Bdate, Relationship) VALUES ('333445555', 'Alice', 'F', '1986-04-05', 'DAUGHTER');

2. UPDATE

Untuk melengkapi atribut Super_ssn pada Tabel EMPLOYEE, gunakan perintah berikut:

UPDATE `employee` SET `Super_ssn`='333445555' WHERE Ssn='123456789';

3. DELETE

Untuk menghapus record dari Tabel DEPT_LOCATIONS, gunakan perintah berikut:

DELETE FROM dept_locations WHERE Dnumber='1';

4. SELECT

Untuk mengambil data pegawai dari Tabel EMPLOYEE yang memiliki nama depan “John”, gunakan perintah berikut ini.

SELECT * FROM employee WHERE Fname=’John’;

Untuk mengambil data nama pegawai beserta nama departemennya, gunakan perintah berikut.

SELECT Fname, Minit, Lname, Dname FROM employee, department WHERE Dno=Dnumber;

Setelah struktur database dibuat dan data diinput ke masing-masing tabel, berikutnya kita dapat melakukan pengelolaan data menggunakan perintah DML lainnya, seperti UPDATE, DELETE dan SELECT.

12

LATIHAN

Implementasikan query berikut dengan SQL pada Basisdata COMPANY.

1. Tampilkan jumlah proyek yang pernah diikuti oleh pegawai bernama depan “John”.

2. Tampilkan nama belakang pegawai yang bekerja di departemen “Research” dan semua nama tanggungannya.

3. Tampilkan nama pegawai yang jumlah tanggungannya lebih dari 2 orang.

4. Tampilkan semua nama departemen dan rata-rata gaji pegawai wanita dan pria pada departemen tersebut. Contoh tampilan sebagai berikut:

Nama Departemen

Jenis Kelamin Pegawai

Rata-Rata Gaji

Riset

Pria

7.000.000

Riset

Wanita

6.700.000

Teknologi

Pria

9.000.000

Teknologi

Wanita

9.100.00

5. Tambahkan informasi mengenai kapan suatu proyek dimulai dan berakhir (setiap proyek dimulai dan berakhir pada tahun yang sama). Jadi, Anda perlu menambah 2 kolom dengan domain “date” yang berisi tentang awal proyek dan akhir proyek.

6. [Bonus] Buatlah rekap proyek tahunan, dengan format dan contoh instance-nya sebagai berikut:

Tahun

Jumlah proyek

Jumlah pegawai terlibat

2015

5

5

2016

7

10

2017

7

13

13

MODUL 3. Penggunaan SQL untuk Sistem Database

Pada bagian ini, kita akan latihan menggunakan Query SQL yang sudah dihubungkan dengan User Interface (mengunakan HTML & PHP). Sebagai contoh, Buatlah suatu sistem CAR RENTAL dari sebuah perusahaan yang memiliki skema tabel berikut ini dengan judul database adalah SEWAMOBIL”. Isikan data pada masing-masing tabel berikut ini kedalam tabel database yang Anda buat.

tabel berikut ini kedalam tabel database yang Anda buat. Gambar 3.1 Database State dari Basisdata CAR

Gambar 3.1 Database State dari Basisdata CAR RENTAL

Setelah selesai membuat database di DBMS, silahkan akses file “praktikum.html” pada direktori C://program files/xampp/htdocs/datman. Dari file tersebut anda akan mendapatkan pilihan menu sebagai berikut.

14

Gambar 3.2. Tampilan Menu pada Aplikasi Praktikum Data Mangement Cobalah mengakses database yang sudah Anda

Gambar 3.2. Tampilan Menu pada Aplikasi Praktikum Data Mangement

Cobalah mengakses database yang sudah Anda buat melalui user interface dari program yang sudah disediakan dengan melakukan latihan berikut ini.

LATIHAN

Tuliskan SQL Statement/Query yang digunakan untuk menampilkan hasil yang diinginkan dari setiap nomor.

1. Tampilkan jumlah mobil yang termasuk kelompok mobil jenis “Sedan

Klik menu “1. Tampilkan jumlah mobil berdasarkan jenis” maka akan muncul tampilan berikut.

berdasarkan jenis” maka akan muncul tampilan berikut. Gambar 3.3. Tampilan pada Menu 1 Tekan tombol “Hitung”

Gambar 3.3. Tampilan pada Menu 1

Tekan tombol “Hitung” maka akan ditampilkan jumlah mobil yang berjenis “sedan” seperti berikut.

juml ah mobil yang berjenis “ sedan ” seperti berikut. Gambar 3.4. Tampilan Hasil Perhitungan Jumlah

Gambar 3.4. Tampilan Hasil Perhitungan Jumlah Film dengan Genre Action

15

Anda dapat melihat pada tabel Armadadi DBMS apakah benar ada 2 mobil dengan jenis Sedan.

DBMS apakah benar ada 2 mobil dengan jenis “ Sedan ” . Gambar 3.5. Tabel armada

Gambar 3.5. Tabel armada pada DBMS

Sekarang coba lihat jumlah mobil dengan jenis “SUV” dengan memilih dropbox “jenis mobil” lalu tekan tombol “Hitung”. Apa yang terjadi?

mobil ” lalu tekan tombol “Hitung”. Apa yang terjadi? Gambar 3.6. Latihan Menampilakan Jumlah Mobil Berjenis

Gambar 3.6. Latihan Menampilakan Jumlah Mobil Berjenis SUV

2. Tampilkan merk mobil yang pernah dipinjam oleh Budi

Klik menu “2.Tampilkan peminjaman mobil oleh pelangganmaka akan muncul tampilan berikut.

mobil oleh pelanggan ” maka akan muncul tampilan berikut. Gambar 3.7. Tampilan pada Menu 2 Klik

Gambar 3.7. Tampilan pada Menu 2

Klik tombol “Cari”, maka akan tampil hasil berikut.

2 Klik tombol “Cari”, maka akan tampil hasil berikut . Gambar 3.8. Tampilan Hasil Pencarian Mobil

Gambar 3.8. Tampilan Hasil Pencarian Mobil yang Dipinjam Budi

16

Silahkan coba untuk melihat merk mobil yang pernah dipinjam oleh Cindi. Apa hasilnya?

merk mobil yang pernah dipinjam oleh Cindi. Apa hasilnya? Gambar 3.9. Latihan Menampilkan Mobil yang Dipinjam

Gambar 3.9. Latihan Menampilkan Mobil yang Dipinjam Cindi

3. Tampilkan total harga sewa yang pernah dibayarkan oleh Budi

Klik menu “3. Tampilkan total biaya sewa pelanggan” maka akan muncul tampilan berikut

biaya sewa pelanggan ” maka akan muncul tampilan berikut Gambar 3.10. Tampilan Menu 3 Tekan tombol

Gambar 3.10. Tampilan Menu 3

Tekan tombol “Cari” dan akan menampilkan hasil sebagai berikut.

“Cari” dan akan menampilkan hasil sebagai berikut. Gambar 3.11. Hasil Pencarian Total Harga Sewa dari Budi

Gambar 3.11. Hasil Pencarian Total Harga Sewa dari Budi

Silahkan cek dengan data yang ada di DBMS dengan melihat pada tabel “Sewa” berikut. Budi memiliki No_Pel “002” dan memiliki data tot_hrg sebesar “750000” dan “850000” sehingga jumlah totalnya 1600000.

000” dan “ 8500 00” sehingga jumlah totalnya 1600000. Gambar 3.12. Tampilan Tabel Sewa pada DBMS

Gambar 3.12. Tampilan Tabel Sewa pada DBMS

Silahkan coba untuk melihat total harga sewa dari Cindi. Apa hasilnya?

17

Gambar 3.13. Latihan Menampilkan Total Harga Sewa dari Cindi 4. Tambahkan data sebagai berikut ke

Gambar 3.13. Latihan Menampilkan Total Harga Sewa dari Cindi

4. Tambahkan data sebagai berikut ke dalam database:

Pada tanggal 10/02/2019, Andi menyewa mobil Civic” dan “Innova” (kode sewa S0005). Andi mengembalikan film tersebut pada tanggal 13/02/2019 sehingga harus membayar denda sebesar 10% dari harga total harga sewa.

Untuk menambahkan data tersebut dilakukan dalam dua tahap dengan asumsi bahwa saat peminjaman dan saat pengembalian dilakukan pada waktu yang berbeda.

Pada saat peminjaman dilakukan, Klik menu “4. Input data penyewaan mobil” dan akan memberikan tampilan berikut.

penyewaan mobil ” dan akan memberikan tampilan berikut. Gambar 3.14. Tampilan Menu 4 Isikan field Nama

Gambar 3.14. Tampilan Menu 4

Isikan field Nama Customer dengan “Andi”, Kode sewa dengan “S0005”, Tanggal Sewa pilih 10/02/2019”, Nama Mobil 1 dengan “Civic” dan Nama Mobil 2 dengan “Innova”. Seperti berikut

18

Gambar 3.15. Pengisian Form Penyewaan Film pada Menu 4 Lalu tekan tombol “Entry”. Data akan

Gambar 3.15. Pengisian Form Penyewaan Film pada Menu 4

Lalu tekan tombol “Entry”. Data akan disimpan ke dalam tabel di DBMS dan akan menampilkan total harga sewa yang harus dibayarkan Budi seperti berikut.

total harga sewa yang harus dibayarkan Budi seperti berikut. Gambar 3.16. Tampilan Total Harga Sewa Pada

Gambar 3.16. Tampilan Total Harga Sewa

Pada saat pengembalian, Klik menu “5. Input data pengembalian sewa” maka akan muncul tampilan berikut.

pengembalian s ewa” maka akan muncul tampilan berikut. Gambar 3.17. Tampilan Menu 5 Isikan field Kode

Gambar 3.17. Tampilan Menu 5

Isikan field Kode Sewa dengan “S0005”, Tanggal Kembali dengan “13/02/2019” dan Denda dengan “10”.

dengan “ 13/02/2019 ” dan Denda dengan “ 1 0”. Gambar 3.18. Pengisian Form Pengembalian Sewa

Gambar 3.18. Pengisian Form Pengembalian Sewa pada Menu 5

19

Lalu klik tombol Entry dan muncul tampilan jumlah total denda yang harus dibayar seperti berikut ini.

jumlah total denda yang harus dibayar seperti berikut ini. Gambar 3.19. Tampilan Jumlah Denda Silahkan lihat

Gambar 3.19. Tampilan Jumlah Denda

Silahkan lihat pada Tabel “menyewa” dan “detailmenyewa”. Apa yang terjadi?

5. Tampilkan masing-masing merk mobil, harga sewa, dan frekuensi disewa

Klik Menu “6. Rekap data sewa mobil”. Selanjutnya akan muncul tampilan berikut.

sewa mobil ”. Selanjutnya akan muncul tampilan berikut. Gambar 3.20. Tampilan Menu 6 Pada menu ini,

Gambar 3.20. Tampilan Menu 6

Pada menu ini, sistem akan langsung merekap semua mobil yang pernah disewa, harga sewa dan seberapa sering mobil tersebut di sewa.

6. Buatlah rekap data yang menampilkan nama pelanggan, total mobil yang pernah disewa, dan frekuensi menyewa

Klik Menu “7. Rekap data sewa pelanggan”. Selanjutnya akan muncul tampilan berikut ini.

Menu “ 7. Rekap data sewa pelanggan ”. Selanjutnya akan muncul tampilan berikut ini. Gambar 3.21.

Gambar 3.21. Tampilan Menu 7

20

REFERENSI

Codewalkers.com.

Relationship,

Entities,

and

Database

Design.

Elmasri, R., and Navathe, S.B., Fundamentals of Database Systems, Addison Wesley 2011.

Nedmartin.org. INFS1200-assignment-1-part-1. http://www.nedmartin.org/uni/INFS1200-

21