Anda di halaman 1dari 121

LAPORAN AKHIR

PRAKTIKUM BASIS DATA

Disusun Oleh :

NAMA : ELLA FRANSISKA


NIM : 200631100081
DOSEN PENGAMPU : MEDIKA RISNASARI, S.ST., M.T
ASISTEN : MAULID HIDAYAT

LABORATORIUM SISTEM INFORMASI PENDIDIKAN


FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS TRUNOJOYO MADURA
2021

i
LEMBAR PENGESAHAN
PRAKTIKUM BASIS DATA

NAMA : ELLA FRANSISKA


NIM : 200631100081
KELAS : 3C
Dengan rincian kegiatan praktikum :
No Hari/tanggal Modul Paraf asisten
1. Senin, 30 Agustus 2021 Modul 1
2. Senin, 6 September 2021 Modul 2
3. Senin, 20 September 2021 Modul 3
4. Senin, 18 Oktober 2021 Modul 4
5. Selasa, 02 November 2021 Modul 5
6. Senin, 15 November 2021 Modul 6
7. Senin, 29 November 2021 Modul 7

Nilai Akhir : ________________________

Bangkalan, 17 Desember 2021

Mengetahui,
Dosen Pengampu, Asisten Praktikum

Medika Risnasari, S.ST., M.T Maulid Hidayat


NIP. 198410222014042002 NIM. 190631100100

ii
KATA PENGANTAR

Puji dan syukur saya panjatkan kehadiran Tuhan Yang Maha Esa, karena atas
berkat rahmatNya saya dapat menyelesaikan praktikum serta laporan akhir. Adapun isi
dari laporan akhir ini adalah kumpulan dari setiap laporan mingguan selama praktikum
berlangsung. Laporan ini merupakan syarat untuk dapat mengikuti ujian Praktikum dan
merupakan syarat dalam mengontrak mata kuliah Praktikum Basis Data
Saya juga tidak lupa untuk mengucapkan banyak terimakasih kepada Dosen serta
Asisten Praktikum Mata Kuliah Praktikum Basis Data yang selalu membimbing dan
mengajari saya dalam melaksanakan praktikum dan dalam menyusun laporan ini. Serta
semua pihak yang membantu saya dalam hal penyusunan laporan ini.
Laporan ini masih sangat jauh dari kesempurnaan oleh karena itu kritik serta saran
yang membangun masih saya harapkan untuk penyempurnaan laporan akhir ini. Saya
ucapkan mohon maaf apabila dalam penulisan laporan akhir ini masih banyak kesalahan.
Atas perhatian dari semua pihak saya ucapkan terima kasih, semoga laporan akhir
ini bisa bermanfaat khususnya bagi penulis.

Bangkalan, 17 Desember 2021

Penulis

iii
DAFTAR ISI

LEMBAR PENGESAHAN .............................................................................................. ii


KATA PENGANTAR ..................................................................................................... iii
DAFTAR ISI ................................................................................................................... iv
MODUL I : INSTALASI SOFTWARE ........................................................................... 6
MODUL II : MODEL DATA ERD ............................................................................... 25
MODUL III : TRANSFORMASI .................................................................................. 40
MODUL IV : DATA DEFINITION LANGUAGE (DDL) ........................................... 53
MODUL V : DATA MANIPULATION LANGUAGE ................................................ 79
MODUL VI : RELASI DAN JOIN ................................................................................ 94
MODUL VII : MODIFIKASI DATA (MYSQL DAN PHP) ...................................... 103
SARAN......................................................................................................................... 119
DAFTAR PUSTAKA ................................................................................................... 120
BIODATA PENULIS ................................................................................................... 121

iv
LAPORAN SEMENTARA
PRAKTIKUM BASIS DATA

Penyusun :
Ella Fransiska (200631100081)

LABORATORIUM SISTEM INFORMASI PENDIDIKAN


FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS TRUNOJOYO MADURA
2021

5
MODUL I : INSTALASI SOFTWARE

1.1 TUJUAN
1.1.1 Mahasiswa dapat mengetahui software-software yang dibutuhkan dalam
praktikum basis data
1.1.2 Mahasiswa mampu memahami cara penginstallan software basis data
1.1.3 Mahasiswa mampu memahami istilah-istilah dalam basis data.

1.2 LANDASAN/DASAR TEORI


1.2.1 Pengenalan Software
Dalam praktikum basis data ada beberapa software yang dibutuhkan untuk
melakukan praktikum, diantaranya Power Designer, DIA, XAMPP, Visual
Studio Code.

1.2.1.1 Power Designer


Power Designer adalah perangkat lunak buatan Sybase yang dibuat untuk
membantu dalam perancangan sistem informasi. Namun, untuk keperluan
yang paling sering digunakan adalah PDPA (Power Designer Process
Analyst) dan PDDA (Power Designer Data Architect).
Power Designer Process Analyst digunakan untuk membantu dalam
proses penggambaran data flow diagram mulai dari context diagram.
Sedangkan Power Designer Data Architect digunakan untuk membantu
dalam penggambaran entity relationship diagram.

1.2.1.2 DIA
DIA adalah sebuah aplikasi free dan open source software yang fungsinya
untuk membantu pembuatan dan perencanaan diagram agar lebih
terstruktur. Software ini dapat berjalan diberbagai platform atau biasa
disebut multiplatform seperti windows, linux dan Mac OS.

1.2.1.3 XAMPP

6
XAMPP adalah software yang mendukung banyak sistem operasi atau
merupakan kompilasi dari beberapa program. Fungsi dari software ini
adalah sebagai server yang berdiri sendiri (localhost), yang terdiri dari
program Apache HTTP Server, MySQL database dan penerjemah Bahasa
yang ditulis dengan Bahasa pemrograman PHP dan Perl.

1.2.1.4 Visual Studio Code


Visual Studio Code atau dikenal dengan VSCode adalah software
penyunting kode-sumber buatan Microsoft untuk linux, MacOS dan
Windows. Software ini menyediakan fitur seperti penyorotan sintaksis,
penyelesaian kode, kutipan kode, merefaktor kode, pengawakutuan dan
Git.
VSCode juga merupakan penyuunting kode-sumber yang dapat digunakan
untuk beberapa Bahasa pemrograman seperti Java,JavaScript, Go,
Node.js, Python dan C++. Software ini juga memiliki beberapa ekstensi
untuk FTP, sehingga memungkinkan software ini digunakan sebagai
perangkat lunak gratis alternatif untuk pengembangan web. Kode dapat
disinkronkan antara penyunting dan server, tanpa harus mengunduh
perangkat lunak tambahan.

1.2.2 Istilah-istilah Basis Data


Istilah-istilah yang umum dalam database
1.2.2.1 Table
Table merupakan kumpulan elemen menggunakan model kolom
vertical dan baris horizontal. Kolom didefinisikan sebagai
struktur table, baris dikatakan sebagai konten. Sebuah kolom
dapat terdiri dari sejumlah baris. Dalam relasional database
model, kolom disebut dengan attribute, sedangkan baris disebut
dengan tupple. Terdapat beberapa aturan dalam pembuatan
struktur table dalam database, diantaranya sebagai berikut :

7
Penamaan table menggunakan kata objek yang sesuai dengan
konten yang akan disimpan didalamnya. Setiap table dalam
database tidak boleh menggunakan kata yang sama agar tidak
terjadi redundancy data. Setiap table dalam database haris
memiliki satu kolom yang unik yang berfungsi sebagai kunci
primer (primary key).
Menggunakan huruf kecil untuk penamaan sebuah table dalam
database.
1.2.2.2 Query
Query merupakan kumpulan perintah yang digunakan untuk
mengolah data dalam table ataupun database itu sendiri. Perintah
tersebut secara umum berupa :
Create : perintah untuk membuat database dan membuat table
dalam database.
Read : perintah untuk menampilkan data yang berada dalam
database.
Update : perintah untuk memanipulasi data dalam database.
Delete : perintah untuk menghapus data dalam database.
1.2.2.3 Field
Field merupakan kumpulan karakter yang terdapat dalam suatu
atribut yang menunjukkan atau menampilkan suatu item, seperti
NIM, nama_mahasiswa, tanggal_lahir dan jenisKelamin
merupakan contoh dari field.
1.2.2.4 Record
Record disebut juga dengan tupple merupakan kumpulan elemen-
elemen dalam field yang saling berkaitan untuk memberikan
informasi mengenai suatu entitas dengan lengkap. Entitas dapat
berupa orang, tempat, kejadian dan konsep. Contoh pada table
mahasiswa memiliki kumpulan data value berupa noMahasiswa,
namaMahasiswa, tanggal_lahir dan jenisKelamin.

8
1.3 LANGKAH-LANGKAH PENGINSTALAN
1.3.1 Power Designer
1. Download aplikasi pada link berikut
https://drive.google.com/drive/folders/1Y8XsrxFpngkIqsNUAdk2H4
FlzfBv2iU4
2. Klik Installer Sybase Power Designer 16.5 dan akan muncul

3. Tunggu sesaat kemudian akan muncul seperti ini, lalu klik Next

9
4. Klik selection pada location

5. Setelah muncul nama negara negara pilih salah satunya

6. Setelah itu kita pilih I AGREE lalu klik Next

10
7. Disini kita dapat mengatur dimana kita dapat menyimpannya pada
button Browser setelah mengaturnya kita cukup klik Next

8. Dibagian Features ini kita dapat memilih fitur apa saja yang kita
butuhkan centang saja lalu klik Next untuk melanjutkan pada tahap
selanjutnya.

11
9. Pada bagian General dan Notation pastikan semua dicentang lalu Next
saja.

10. Disini kita dapat mengetahui tempat disimpannya program


aplikasinya,lalu klik Next

12
11. Disini kita dapat mengetahui apa saja yang akan dicopy program
filenya, lalu klik Next

12. Ditahap ini hanya perlu untuk menunggu sampai proses selesai.

13
13. Setelah proses finishing selesai lalu klik finish.

1.3.2 DIA
1. Download software pada link berikut
https://drive.google.com/file/d/1D4Yx9T9-aurGZK4mzVB-
y0VZy8wRY_tV/view

14
2. Pilih file Dia yang ingin diinstall, pilih Bahasa yang ingin digunakan
English, klik Ok jika selesai

3. Setelah di klik ok, maka akan muncul pesan selamat dating dan klik
Next

4. Dan akan muncul pemberitahuan atau persetujuan apakah DIA ingin


diinstall atau tidak

5. Gambar dibawah ini adalah componenet yang ada di DIA yang ingin
di install, lalu klik Next

15
6. Setelah itu aka nada pemilihan tempat untuk menginstall DIA

7. Gambar dibawah ini adalah proses penginstallan DIA dan jika proses
penginstallan selesau klik finish.

1.3.3 XAMPP
1. Download software pada link berikut ini
https://www.apachefriends.org/download.html
2. Buka file software xampp yang telah di download
3. Jalankan program dan klik next

16
4. Setelah itu ceklist semua yang ada pada komponen

5. Kemudian pilihlah folder untuk penyimpanan

17
6. Lalu pilih Bahasa yang digunakan yaitu English

7. Setelah itu ceklist dan next

18
8. Kemudian pilih next

9. Tunggulah sampai proses selesai dan klik Next

19
10. Setelah itu klik Finish dan proses instalasi selesai

1.3.4 VSCode
1. Download software pada link berikut ini
https://code.visualstudio.com/
2. Bukalah file software Visual Studio Code yang telah didownload
3. Jalankan program, ceklist I accept the agreement dan pilih Next

4. Pilih folder untuk penyimpanan lalu klik Next

20
5. Kemudian klik Next

6. Ceklist Add to PATH dan klik Next

21
7. Setelah itu klik install

8. Tunggu hingga proses selesai

22
9. Kemudian klik finish dan proses instalasi selesai

1.4 SIMPULAN
Ada beberapa software yang digunakan dalam pembuatan database mulai dari
software untuk pembuatan flowchart sampai software untuk pembuatan kode
pemrograman untuk database. Software yang digunakan untuk praktikum kali ini
ada 4 jenis, yaitu Power Designer, DIA, XAMPP dan VSCode. Software-software
ini memerlukan RAM yang cukup banyak, sebab file yang digunakan sangat
besar.

23
LAPORAN SEMENTARA
PRAKTIKUM BASIS DATA

Penyusun :
Ella Fransiska (200631100081)

LABORATORIUM SISTEM INFORMASI PENDIDIKAN


FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS TRUNOJOYO MADURA
2021

24
MODUL II : MODEL DATA ERD

2.1 TUJUAN
Dalam praktikum ini, diharapkan praktikan
1. Praktikan dapat memahami dan membuat ER-Diagram
2. Praktikan dapat menggunakan Power Designer untuk mendesain basis data

2.2 LANDASAN/DASAR TEORI


Basis data adalah sekumpulan data yang saling berhubungan yang disimpan
secara Bersama sedemikian rupa dan tanpa pengulangan (redundancy) yang tidak
perlu, untuk memenuhi berbagai kebutuhan. Basis data bisa dibayangkan sebagai
lemari arsip dengan berbagai cara pengaturannya. Basis data dan lemari arsip
memiliki prinsip kerja dan tujuan yang sama, prinsipnya yakni pengaturan
data/arsip. Tujuan utamanya adalah kemudahan dan kecepatan dalam
pengambilan kembali data/arsip.
2.2.1 Model Data
Model data adalah sekumpulan cara/peralatab/tool untuk mendeskripsikan
data-data, hubungannya satu sama lain, semantiknya serta Batasan
konsistensi. Model data ada 5, yaitu
a. Model Hirarkis (Hirarchical Model)
b. Model Jaringan (Network Model)
c. Model Relasional (Relational Model)
d. Model Relasi Entitas (Entity-Relationship Model)
e. Model Berbasis Objek (Object Oriented Model)

2.2.2 Entity-Relationship Model


Merupakan suatu model untuk menjelaskan hubungan antar data dalam
basis data yang berdasarkan suatu persepsi bahwa di dunia nyata terdiri
dari object-object dasar yang memiliki hubungan atau relasi dari object-
object tersebut. Model Relasi Entitas atau Entity-Relationship Model pada

25
hakekatnya perwujudan dari model relasional dalam bentuk diagram, yaitu
ER-Diagram.
Beberapa istilah yang perlu dipahami dalam model data ER, yaitu
a. Entitas (Entity)
Entitas menunjukkan objek-objek dasar dalam sistem. Objek dasar
tersebut dapat berupa orang, benda atau hal lain yang keterangannya
perlu disimpan dalam database.
b. Atribut (Attribute)
Atribut sering juga disebut sebagai property, merupakan keterangan-
keterangan yang terjadi terkait pada sebuah entitas. Atribut berfungsi
sebagai penjelas sebuah entitas.
c. Relasi (Relation)
Relasi atau hubungan adalah kejadian atau transaksi yang terjadi
diantara dua entitas.
Macam-macam relasi, yaitu
1) Relasi Binary
Relasi binary merupakan relasi yang terjadi antara 2 himpunan
entitas yang berbeda. Relasi ini merupakan relasi yang umum
digunakan. Relasi antara mahasiswa mengambil mata kuliah
menunjukkan binary relation.
2) Relasi Unary
Relasi unary merupakan variasi relasi yang terjadi dari sebuah
himpunan entitas ke himpunan entitas yang sama dan unary sering
disebut dengan relasi tunggal. Relasi antara dosen dan
mendampingi menunjukkan unary relation.
3) Relasi N-ary
Relasi N-ary merupakan relasi dari 3 entitas atau lebih. Relasi ini
untuk menghubungkan dari tiga entitas yang dimaksukkan ke
relasi multi entitas. N-ary relation menunjukkan secara lebih jelas
bahwa beberapa entitas berpartisipasi dalam sebuah relasi tunggal.
Bentuk relasi semacam ini sebisa mungkin dihindari karena akan

26
mengaburkan derajat relasi yang ada dan akan menyebabkan
perencanaan database semakin kompleks.
Contohnya :

2.2.3 Participation Contraint (Batasan Partisipasi)


Participation Contraint (Batasan Partisipasi) ini menetukan apakah
keberadaan sebuah entitas tergantung pada hubungannya ke entitas lain
melalui jenis relasinya.
Participation Constraint ada 2 yaitu :
a. Total Constraint adalah constraint yang mana data dalam entitas yang
memiliki constraint tersebut terhubung secara penuh ke dalam entitas
dari relasinya.
b. Constraint Partial adalah constraint yang mana data dalam entitas yang
memiliki constraint tersebut terhubung ke dalam entitas dari relasinya.

2.2.4 Derajat/Kardinalitas Relasi


Derajat/Kardinalitas relasi menujukkan jumlah maksimum data entitas
yang dapat berelasi dengan entitas lain. Kardinalitas relasi yang terjadi
diantara dua himpunan entitas dapat berupa satu ke satu (one to one), satu
ke banyak (one to many), dan banyak ke banyak (many to many). Macam-
macam derajat/kardinalitas relasi, yaitu
a. Satu ke Satu (one to one)
Artinya setiap himpunan entitas hanya boleh berhubungan dengan satu
himpunan entitas lainnya. Sebagai contoh himpunan suami ke istri
berikut :

27
b. Satu ke Banyak (one to many)
Relasi satu ke banyak (one to many) berarti satu dari setiap himpunan
entitas boleh berhubungan dengan banyak himpunan entitas lainnya.
Sebagai contoh himpunan ibu dan anak berikut :

c. Banyak ke Banyak (many to many)


Relasi banyak ke banyak (may to many) berarti setiap himpunan
entitas boleh berhubungan dengan banyak himpunan entitas lainnya
dan sebaliknya. Sebagai contoh himpunan matakuliah dan mahasiswa
berikut :

2.2.5 Simbol dalam ERD

28
2.3 ALAT DAN BAHAN
1.3.1 Komputer/Laptop
1.3.2 Software Power Designer
2.4 LANGKAH-LANGKAH PRAKTIKUM
Tahapan pembuatan ERD
1. Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan terlibat
2. Menentukan atribut-atribut key dari masing-masing himpunan antitas
3. Mengidentifikasi dan menetapkan seluruh himpunan relasi diantara himpunan
entitas-himpunan entitas yang ada beserta foreign key nya
4. Menentukan derajat/kardinalitas relasi untuk setiap himpunan relasi

29
5. Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut
deskriptif

1.4.1 Latihan 1
Pada saat mendaftar menjadi anggota perpustakaan, dicatatlah nama,
nomor mahasiswa dan alamat mahasiswa. Setelah itu mereka baru bisa
meminjam buku di perpustakaan. Buku-buku yang dimiliki perpustakaan
banyak sekali jumlahnya. Tiap buku memiliki data nomor buku, judul,
pengarang, penerbit,tahun terbit. Satu buku bisa ditulis oleh beberapa
pengarang.

Tahapan pembuatan ERD


1. Entitas = anggota,buku
2. Atribut Key = Nomor Mahasiswa, Nomor Buku
3. Relasi Anggota dengan Buku = Meminjam 1:N
4. A. anggota = nama mahasiswa, alamat mahasiswa
B. Buku = judul, pengarang, penerbit, tahun terbit

Penyelesaian
Langkah 1

Langkah 2

Langkah 3

Langkah 4

30
Langkah 5 (tandai primary key nya)

1.4.2 Latihan 2
Secara sederhana, untuk melakukan pemodelan data pada Power Designer,
kita harus memulainya pada level Conceptual Data Model (CDM),
dimana pemodelan data dilakukan dengan menggunakan metode
Entity Relationship Diagram. Pada CDM, tipe data yang dipergunakan
bersifat general, dan tidak spesifik terhadap suatu database tertentu. Tahap
kedua adalah membuat Physical Data Model (PDM), PDM merupakan
bentuk spesifik dari CDM yang telah kita bangun. Power Designer
memiliki banyak dukungan target database, sehingga kita tidak perlu
bingung mengenai tipe – tipe data yang dipergunakan, karena Power
Designer akan menyesuaikan seperti pada tipe data yang kita definisikan
sebelumnya pada tahap CDM. Tahap terakhir adalah mengenerate script
Data Definition Language (DDL) dari PDM yang telah dibuat. Melalui
DDL inilah kita dapat mengenerate objek – objek database (table,
trigger,view, procedure) sehingga kemudian DDL script ini dapat kita
eksekusi ke software database lain seperti access, Oracle atau MySQL,
atau dapat juga kita buat koneksi dan mengeksekusinya langsung via
Power Designer.
Proses pembuatan Conceptual Data Model dengan Sybase Power Designer
adalah sebagai berikut

31
a. Buka software Sybase Power Designer, pada kotak dialog Welcome to
PowerDesigner pilih Create Model pada kotak dialog New Model pilih
tab Model types pilih Conceptual Data Model Conceptual Diagram
b. Setelah masuk ke dalam lembar kerja, Langkah selanjutnya adalah
membuat entity yang dibutuhkan yaitu entity.
Misalnya kita buat enity supplier, entity pembelian, enity
detail_pembelian, enity barang, enity detail_pembelian, enity
pembelian dan enity customer. Pada tahapan ini kita akan membuat
enity supplier dengan klik icon entity pada pallete kemudian klik pada
lembar kerja maka akan tampil kotak enity dengan nama enity_1
c. Kemudian untuk mengubah nama entity klik kanan pada enity yang
sudah dibuat dan pilih properties. Pada tab general kita dapat memberi
nama enity yang akan kita buat.
d. Pada tab general kita dapat mengisikan atribut yang terdapat pada
entity tersebut dan menentukan tipe data yang kita gunakan dan juga
menentukan atribut yang menjadi primary key pada enity tersebut
e. Untuk membuat enity yang lain dapat mengikuti Langkah yang sama
dengan Langkah membuat enity supplier. Setelah semua entity dibuat
maka Langkah selanjutnya adalah membuat relasi antar semua antity
dengan klik icon relationship dan menghubungkan entity yang satu
dengan yang lain. Kemudian klik kanan pada relasi yang sudah dibuat
dan dipilih properties. Pada tab general kita dapat mengubah nama
relasinya kemudian pada tab cardinalities kita dapat mengubah
hubungan kardinalitas antara dua entity yang kita beri relasi.
f. Setelah semua entity ditentukan relasinya dan ditentukan kardinalitas
relasinya maka langkah selanjutnya adalah melakukan pengecekan
tentang kebenaran model yang kita buat dengan cara pilih I Tools
Check Model. Jika model yang kita buat sudah benar maka akan
terlihat pesan bahwa CDM yang telah dibangun benar pada bagian
bawah workspace.

32
2.5 HASIL DAN ANALISA PRAKTIKUM
1. Hasil

Analisa :
Dalam membuat sebuah CDM kita harus mengetahui hubungan kardinalitas
antar
entity yang akan dimasukkan dalam CDM tersebut. Pada CDM di atas
hubungan
kardinalitasnya dapat diuraikan sebagai berikut:
1. Supplier dan pembelian mempunyai kardinalitas relasi one to many.
2. Pembelian dan detail_pembelian mempunyai hubungan kardinalitas one
to many dan juga berhubungan secara dependent.
3. Detail_pembelian dan barang mempunyai hubungan kardinalitas many to
one.
4. Barang dan detail_penjualan mempunyai hubungan kardinalitas one to
many.
5. Detail_penjualan dan penjualan mempunyai hubungan kardinalitas many
to one dan juga berhubungan secara dependent.
6. Penjualan dan customer mempunyai hubungan kardinalitas many to one

2. Hasil

33
Analisa :
PDM dibuat berdasarkan CDM yang sudah kita buat pada Sybase Power
Designer. PDM dibuat dengan melakukan generate into physical data model
pada
CDM. Penjelasan tentang PDM tersebut adalah sebagai berikut:
1. Hubungan kardinalitas pada entity supplier dan entity pembelian adalah
one to many sehingga atribut id_supplier yang menjadi primary key pada
entity supplier akan menjadi foreign key pada entity pembelian.
2. Hubungan kardinalitas pada entity pembelian dan entity detail_pembelian
adalah one to many dan berhubungan secara dependent sehingga atribut
no_faktur_pembelian yang menjadi primary key pada entity pembelian
akan menjadi primary key dan foreign key pada entity detail_pembelian.
3. Hubungan kardinalitas pada entity detail_pembelian dan entity barang
adalah one to many sehingga atribut kode_barang yang menjadi primary
key pada entity barang akan menjadi foreign key pada entity
detail_pembelian.
4. Hubungan kardinalitas pada entity barang dan entity detail_penjualan
adalah many to one sehingga atribut kode_barang yang menjadi primary
key pada entity barang akan menjadi foreign key pada entity
detail_penjualan.
5. Hubungan kardinalitas pada entity detail_penjualan dan entity penjualan
adalah many to one dan berhubungan secara dependent sehingga atribut
no_faktur_penjualan yang menjadi primary key pada entity penjualan
akan menjadi primary key dan foreign key pada entity detail_penjualan.

34
6. Hubungan kardinalitas pada entity penjualan dan entity customer adalah
many to one sehingga atribut id_customer yang menjadi primary key pada
entity cutomer akan menjadi foreign key pada entity pembelian.

2.6 TUGAS/SOAL
1. Tentukan entitas, attribute, key, relasi, derajat kardinalitas dari permasalahan:
a. Sistem penyewaan hotel/kos/asrama
b. Sistem inventaris barang
2. Implementasikan dalam Sybase power designer
2.7 HASIL
1. Penentuan entitas, attribute, key, relasi, derajat kardinalitas dari permasalahan
a. Sistem penyewaan hotel/kos/asrama
Entitas : pemilik kos, penyewa, kamar, transaksi
Attribute : pemilik kos (nama, alamat, no telepon), penyewa (nama,
alamat, no hp), kamar (no kamar, lantai), transaksi (kode transaksi, tgl
penyewaan, lama penyewaan, harga sewa).
Key : no.telepon, no hp, no kamar
Relasi : pemilik “menyediakan” kamar, penyewa “menyewa” kamar,
pemilik “melayani” penyewa, penyewa “membayar” transaksi.
Derajat kardinalitas : pemilik dengan kamar (one to many), penyewa
dengan kamar (one to one), pemilik dengan penyewa (one to many),
penyewa dengan transaksi (one to one).
b. Sistem inventaris barang
Entitas : admin, pemasok,penyewa, barang, transaksi
Attribute : admin (id.admin,nama, alamat, no_telepon,gaji), pemasok
(nama, alamat, kode pemasok, no hp), penyewa (nama, alamat, no hp),
barang (nama barang, kode barang,merk, jumlah), transaksi
(kode_transaksi, tgl penyewaan, harga sewa, lama penyewaan, jumlah
sewa)
Key : id.admin, no hp, kode barang,kode pemasok, kode_transaksi.

35
Relasi : admin “merawat” barang, admin “mendata” pemasok penyewa
“menyewa” barang, pemilik “melayani” penyewa, penyewa “membayar”
transaksi.
Derajat kardinalitas : admin dengan barang (one to many), admin dengan
pemasok (one to many), penyewa dengan barang (one to many), admin
dengan penyewa (one to many), penyewa dengan transaksi (one to one).

2. Hasil pengimplementasian
a. CDM

PDM

b. CDM

36
PDM

2.8 SIMPULAN
Basis data adalah sekumpulan data yang saling berhubungan yang disimpan
secara Bersama sedemikian rupa dan tanpa pengulangan (redundancy) yang tidak
perlu, untuk memenuhi berbagai kebutuhan.
Model data adalah sekumpulan cara/peralatab/tool untuk mendeskripsikan data-
data, hubungannya satu sama lain, semantiknya serta Batasan konsistensi. Ada 5
jenis model data salah satunya adalah Enity-Relationship Model.
ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis
data yang berdasarkan suatu persepsi bahwa di dunia nyata terdiri dari object-

37
object dasar yang memiliki hubungan atau relasi dari object-object tersebut.
Model Relasi Entitas atau Entity-Relationship Model pada hakekatnya
perwujudan dari model relasional dalam bentuk diagram, yaitu ER-Diagram.

2.9 LAMPIRAN

38
LAPORAN SEMENTARA
PRAKTIKUM BASIS DATA

Penyusun :
Ella Fransiska (200631100081)

LABORATORIUM SISTEM INFORMASI PENDIDIKAN


FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS TRUNOJOYO MADURA
2021

39
MODUL III : TRANSFORMASI

3.1 TUJUAN
Dalam praktikum ini diharapkan mahasiswa :
1. Dapat merancang basis data dari permasalahan disekitar
2. Dapat melakukan konversi perancangan basis data model ER ke Model Data
Relational

3.2 LANDASAN/DASAR TEORI


Sebelum memulai membangun database di level fisik di komputer dalam bentuk
file, terlebih dahulu kita harus memahami dalam mentransformasikan level view
dari diagram ER menjadi diagram relationalship dan tabel. Berikut ini adalah
aturan konversi ER diagram ke diagram relationalship dan table
N ERD > Diagram Relationalship Aturan
o
1. ENTITAS KUAT Setiap entitas kuat (strong entity)
menjadi satu tabel dan setiap
simple attribute menjadi kolom.
Nama entitas menjadi nama tabel.
Nama attribute menjadi nama
kolom. Attribute kunci menjadi
Primary Key.

2. ATRIBUTE COMPOSIT Pada attribute composit maka


atribut menjadi kolom, tetapi

40
atribut alamat tidak menjadi
kolom.

3. Atribut Multivalue Atribut Multivalue menjadi tabel.


Sehingga entitas kuat yang
memiliki atribute multivalue
menjadi 2 tabel

4. Atribut Turunan Setiap atribut turunan menjadi


kolom

5. ENTITAS LEMAH Setiap entitas lemah menjadi tabel


setiap simple atribut menjadi kolo.
Atribut kunci pada entitas kuat

41
yang berelasi dengan entitas
lemah menjadi kolom foreign key.
Atribut nip di tabel karyawan,
menjadi foreign key (FK) di tabel
tanggungan.

6. RELASI SATU KE SATU Full participant setiap entitas kuat


(strong entity) menjadi satu tabel
dan simple atributnya menjadi
kolom.
Tabel yang terbentuk ada dua (2)
buah. Atribut kunci pada salah
satu entitas, menjadi kolom
foreign key pada entitas lain.

7. RELASI ONE TO MANY Setiap entitas kuat (strong entity)


menjadi satu tabel atributnya
menjadi kolom. Tabel yang
terbentuk ada dua (2) buah.
Atribut kunci pada entitas yang

42
memiliki kardinalitas satu (one),
menjadi foreign key pada entitas
yang memiliki kardinalitas banyak
(many), (sedikit ikut ke yang
banyak). Perhatikan atribiute nip,
menjadi fpreign key (fk) di tabel
peminjaman.

8. RELASI ONE TO MANY (1 KE N) One – to – Many (ada atribut di


DENGAN ATRIBUT PADA relasi) entitas menjadi tabel
RELASI beserta atributnya menjadi kolom.
Atribut pada relasi menjadi kolom
entitas dengan kardinalitas
banyak.

43
9. RELASI MANY TO MANY Setiap entitas kuat (strong entity)
menjadi satu tabel dan simple
atributnya menjadi kolom.
Relasi dari kardinalitas many-to-
many menjadi tabel, dan simple
atribut pada relasi menjadi kolom.
Atribut kunci pada entits yang
memiliki kardinalitas satu (many),
menjadi foreign key pada relasi.
Jika diperlukan dapat
ditambahkan kolom baru sebagai
primary key pada tabel dari relasi
ini (lihat kolom id_det_pin).
Tabel yang terbentuk ada tiga (3)
buah. Perhatikan atribut kd_buku
dan kd_peminjaman menjadi
foreign key (fk) di tabel
detail_peminjaman.

10 RELASI UNARY Satu ke satu (1 to 1).


Setiap entitas kuat (strong entity)
menjadi satu tabel dan simple
atributnya menjadi kolom. Atribut
kunci menjadi kolom primary key

44
dengan nama kolom seperti nama
atribut kunci. Atribut kunci
menambahkan foreign key dengan
nama kolom seperti nama sesuai
relasi. Tabel yang terbentuk ada
satu buah. Many – to – many
(M:N). relasi dari kardinalitas
many to many menjadi tabel, dan
simple atribut menjadi kolom

11 RELASI N ARY Setiap entitas kuat (strong entity)


menjadi satu tabel dan 0
attributnya menjadi kolom.
Atribut kunci menjadi kolom
primary key dengan nama kolom
seperti nama atribut kunci. Relasi
dari N ary relationship menjadi
tabel dan simple atribut menjadi
kolom. Atribut kunci pada entitas
yang berelasi menjadi kolom
foreign key pada relasi. Tabel
yang terbentuk ada empat (4)
buah.

45
12 GENERALISASI DAN Entitas superclass menjadi tabel
SPESIALISASI dengan simple atribut menjadi
kolom.
Atribut kunci menjadi primary
key. Entitas subclass menjadi
tabel dengan simple atribut
menjadi kolom dan atribut kunci
dari superclass menjadi kolom
primary key pada subclass
Cara 1

Cara 2
Entitas subclass menjadi tabel
dengan simple atribut menjadi kolom
dan atribut dari entitas superclass
menjadi kolom pada subclass
menjadi kolom pada subclass.
Atribut kunci dari superclass menjadi
kolom primary key pada subclass.

46
3.3 ALAT DAN BAHAN
1. Komputer atau laptop
2. Software DIA
3. Software Power Designer

3.4 LANGKAH-LANGKAH PERCOBAAN


Berikut terdapat contoh ERD dari sebuah apotik

Dengan menggunakan aturan konversi ER diagram menjadi diagram


relasionalshipnya seperti pada teori. Maka lengkapilah model data relational dari
system apotik berikut ini.

47
3.5 HASIL PERCOBAAN

3.6 TUGAS/SOAL

48
1. Konversikan model ERD ini ke model data relasional

2. Buatlah model dara ERD dan relasional dari tugas pada modul 2

3.7 HASIL PENGERJAAN TUGAS


1. Hasilnya

2. ERD

49
CDM

PDM

50
3.8 SIMPULAN
Pada modul transformasi ini, kita mempelajari bagaimana cara mengkonversikan
model data ERD menjadi model data Rasional. Ada beberapa aturan yang harus
kita ketahui sebelum melakukan konversi model data tersebut. Saat kita
melakukan konversi relasi dari tiap entitas akan mempengaruhi pengonversian,
karena akan terjadi pembuatan tabel baru.

3.9 LAMPIRAN

51
LAPORAN SEMENTARA
PRAKTIKUM BASIS DATA

Penyusun :
Ella Fransiska (200631100081)

LABORATORIUM SISTEM INFORMASI PENDIDIKAN


FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS TRUNOJOYO MADURA
2021

52
MODUL IV : DATA DEFINITION LANGUAGE (DDL)

4.1 TUJUAN
Dalam praktikum ini, diharapkan :
1. Praktikan mampu memahami instalasi MYSQL
2. Praktikan dapat memahami dasar-dasar MYSQL
3. Praktikan mampu memahami dan menggunakan printah DDL-MySQL

4.2 LANDASAN/DASAR TEORI


A. Pengertian MYSQL
MySQL adalah suatu perangkat lunak database relasi (Relational Database
Management System atau RDBMS), seperti halnya ORACLE, Postgresql, MS
SQL dan sebagainya. MySQL dibangun, didistrribusikan dan didukung oleh
MYSQL AB. MYSQL AB merupakan perusahaan komersial yang dibiayai
oleh pengembang MYSQL. MySQL AB meyebut produknya sebagai database
open source terpopuler di dunia yang bisa digunakan untuk platform Web dan
baik untuk katagori open source maupun umum.

B. Tipe Data
Data yang terdapat dalam sebuah tabel berupa field-field yang berisi nilai dari
data tersebut. Nilai data dalam field memiliki tipe sendiri-sendiri. MySQL
mengenal beberapa tipe data field yaitu :
1. Tipe data numerik
Tipe data numerik dibedakan dalam dua macam kelompok, yaitu integer
dan floating point. Integer digunakan untuk data bilangan bulat sedangkan
floating point digunakan untuk bilangan decimal.
2. Tipe data string
String adalah rangkaian karakter. Tipe-tipe data yang termasuk dalam tipe
data string dapat dilihat pada tabel berikut :
Tipe Data Kisaran Nilai
CHAR 1-255 karakter

53
VARCHAR 1-255 karakter
TINYTEXT 1-255 karakter
TEXT 1-65535 karakter
MEDIUMTEXT 1-16777215 karakter
LONGTEXT 1-424967295 karakter

3. Tipe data char() dan varchar()


Tipe data char() dan varchar() pada prinsipnya sama, perbedaannya hanya
terletak pada jumlah memori yang dibutuhkan untuk penyimpanan.
Memori yang dibutuhkan untuk tipe data char() bersifat statis, besarnya
bergantung pada berapa jumlah karakter yang ditetapkan pada saat field
tersebut dideklarasikan.
4. Tipe data tanggal
Untuk tanggal dan jam, tersedia tipe-tipe data field berupa DATETIME,
DATE, TIMESTAMP, TIME dan YEAR. Masing-masing tipe
mempunyai kisaran nilai tertentu. MYSQL akan memberikan peringatan
kesalahan (error) apabila tanggal dan waktu yang dimasukkan salah.

C. Operator MySQL
MYSQL mendukung penggunaan operator-operator dan fungsi-fungsi
diantaranya :
1. Operator Aritmatika
Suatu ekspresi yang melibatkan tipe data bilangan (NUMERIK) dan
tanggal (DATE) menggunakan ekspresi aritmatika. Dapat dilihat pada
tabel berikut :
Operator Keterangan
+ Tambah
- Kurang
* Kali
/ Bagi
Mod() Modulus/ hasil sisa bagi

54
2. Operator Pembandingan
Suatu ekspresi yang dapat digunakan pada klausa WHERE dan
mempunyai sintax sebagai berikut : WHERE expr operator value. Tabel
berikut menunjukkan operator pembanding pada MYSQL :
Operator Keterangan
= Sama dengan
> Lebih besar
< Lebih kecil
>= Lebih besar atau sama dengan
<= Lebih kecil atau sama dengan
<> Tidak sama dengan

3. Operator Logika
Operator ini digunakan untuk membandingkan dua nilai variable yang
bertipe Boolean. Berikut tabel yang menunjukkan operator logika pada
MYSQL :
Operator Keterangan
AND Dan
OR Atau
NOT Tidak

4. Operator Karakter
Operator untuk membentuk pencarian string yang sesuai dengan nilai yang
mencantumkan pada kondisi. Kondisi pencarian dapat berisi karakter, ada
3 symbol khusu berikut ini dapat dilihat pada tabel :
Operator Keterangan
% Sembarang karakter berapapun
jumlahnya
_ Sembarang satu karakter

55
[] Sembarang karakter yang terletak
dalam kurung siku

5. Operator Lain-lain
Operator yang digunakan untuk menguji nilai-nilai yang ada dalam list
(tanda kurung) dan dapat juga untuk baris berdasarkan suatu jangkauan
(range) nilai. Ada 2 symbol tersebut dapat dilihat pada tabel berikut ini :
Operator Keterangan
IN Dalam
BETWEEN Diantara

6. Fungsi Agregat
Fungsi agregat (kadang kala disebut fungsi grup atau fungsi ringkasan)
adalah fungsi yang disediakan oleh SQL untuk menghasilak sebuah nilai
berdasarkan sejumlah data. Fungsi sendiri adalah sesuatu kumpulan
instruksi yang menghasilkan sebuah nilai jika dipanggil. Fungsi ini juga
digunakan pada data numerik untuk menghitung nilai baik rata-rata dan
jumlah dari sekumpulan data maupun pencarian jumlah baris dalam tabel.
Untuk lebih jelasnya dapat dilihat dalam tabel berikut :
Operator Keterangan
COUNT Menghitung jumlah baris suatu field
SUM Menjumlahkan data-data numeric pada suatu tabel
AVG Menghitung rata-rata suatu field
MAX Menghitung nilai maksimum suatu field
MIN Menghitung nilai minimum suatu field

D. DDL (Data Definition Language)


DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan
atribut-atribut database, table, atribut (kolom), batasan-batasan terhadap suatu
atribut serta hubungan antar table atau bagian sari sql yang digunakan untuk
mendefinisikan data dan objek database.

56
Struktur basis data yang menggambarkan skema basis data secara keseluruhan
dan di desain dengan Bahasa khusus yang disebut DDL (Data Definition
Language). Dengan Bahasa inilah kita dapat membuat tabel baru, membuat
indeks, mengubah tabel, menentukan struktur penyimpanan tabel baru,
membuat tabel dan sebagainya. Yang termasuk dalam kelompok DDL ini
adalah :
CREATE untuk menciptakan tabel ataupun indeks
ALTER untuk mengubah struktur tabel
DROP untuk menghapus tabel ataupun indeks

1. CREATE
Instalasi sistem manajemen database (DBMS) pada komputer
memungkinkan anda untuk membuat dan mengelola banyak database
independent. Misal :
create database namadatabase;
2. USE
Perintah USE memungkinkan anda untuk menentukan database yang ingin
bekerja dengan anda dalam DBMS.
use namadatabase;
3. ALTER
Setelah anda telah membuat tabel dalam database, anda mungkin ingin
memodifikasi struktur tabel itu. Perintah ALTER yang memungkinkan
anda untuk membuat perubahan pada struktur tabel tanpa menghapus dan
menciptakan tabel baru dengan nama yang berbeda.
4. DROP
Perintah terakhir dari Data Definition Language, DROP yang
memungkinkan kita untuk menghapus seluruh objek database dari DBMS.
Gunakan perintah ini dengan hati-hati! Ingat bahwa perintah DROP
menghapus data keseluruhan struktur dari database anda.
drop database namadatabase;

57
E. CONSTRAINT
Constraint adalah Batasan atau aturan yang ada pada tabel. MySQL
menyediakan beberapa tipe constraint berikut :
1. NOT NULL
Suatu kolom yang didefinisikan dengan constraint Not Null tidak boleh
berisi nilai Null. Kolom yang berfungsi sebagai kunci primer (primary
key) otomatis tidaak boleh Null.
2. UNIQUE
Mendefinisikan suatu kolom menjadi bersifat unik, artinya antara satu data
dengan data lainnya Namanya tidak boleh sama, missal alamat email.
3. PRIMARY KEY
Constraint Primary Key membentuk key yang unik untuk suatu tabel.
4. FOREIGN KEY
Foreign Key Constraint didefinisikan pada suatu kolom yang ada pada
suatu tabel, dimana kolom tersebut juga dimiliki oleh tabel yang lain
sebagai suatu primary key, biasa dipakai untuk menghubungkan antara
dua tabel.

4.3 ALAT DAN BAHAN


1. Laptop/komputer
2. Software XAMPP
3. Software MySQLAdmin
4. Command Prompt

4.4 LANGKAH-LANGKAH PERCOBAAN


A. Perancangan Basis Data
1. ERD Sistem Informasi Matakuliah

58
2. Data Relasional
Tabel Mahasiswa
NIM NAMA ALAMAT

Tabel Matakuliah
KDMK MTKUL SKS

Tabel Mengambil
NIM KDMK NILAI

B. Langkah-langkah Implementasi Basis Data


- Persiapan Software Basis Data
1. Lakukan instalasi database MySQL (XAMPP)
Untuk master software XAMPP bisa didownload gratis di situs resminya
www.apachefriends.org/en/xampp.html . Hal yang perlu diingat ketika
menginstall XAMPP adalah direktori tempat meletakkan hasil instalasi.

2. Direktori MySQL

59
Semua proses yang berjalan untuk bekerja dalam MySQL terdapat dalam
direktori mysql. Didalam direktori mysql terdapat beberapa direktori,
yaitu seperti terlihat pada gambar dibawah :

a. Bin Direktori bin berisi service-service yang bisa dijalankan untuk


mengakses mysql.
b. Data Direktori ini berisi database dan tabel yang sudah dibuat.
3. Menjalankan MySQL
a. Buka XAMPP control panel lalu nyalakan service apache dan mysql.

b. Melalui DOS Prompt, masuk ke direktori utama MySQL, dengan cara


sebagai berikut (yang diketik hanya yang digaris bawah) tetapi
sesuaikan dengan folder kalian menyimpan mysql :
Sintaks : cd c://xampp/mysql/bin
c. Jalankan aplikasi mysql dengan perintah berikut
mysql-u root
Maka akan diminta untuk memasukkan password, isiskan password
yang digunakan pada saat instalasi (misalkan 123456)

60
d. Selanjutnya aka nada respon dari server seperti gambar berikut

e. Implementasikan Perancangan Basis Data dengan MySQL berbasis


teks
- Perintah MySQL
a) Membuat database
Create database namadatabase;
Contoh :

b) Membuat tabel
Perintah yang digunakan untuk membuat tabel menggunakan
perintah berikut :
CREATE TABLE nama_tabel (Field1 TipeData1
(panjangData) NOT NULL PRIMARY KEY, Field2 TipeData2
(panjangData2),…, FieldN TipeDataN (panjangDataN));
Keterangan :
• Nama_tabel → nama yang diberikan di tabel baru. Nama tabel
maksimal terdiri dari 8 karakter. Tidak boleh memakai spasi,
terdiri dari huruf
• Field → nama yang diberikan untuk kolom baru, maksimal
terdiri dari 10 karater, tidak boleh memakai spasi, terdiri dari
huruf, angka dan lain-lain.
• Tipe_data → jenis data yang nilainya dimasukkan dalam
kolom yang telah ditentukan.

61
• Lebar_data → nomor spasi karakter untuk mengikuti data
yang dimasukkan dalam kolom yang telah ditentukan.
• Constraint → Batasan yang digunakan untuk field seperti NOT
NULL, Primary Key.
Contoh
Struktur database
• Mahasiswa (nim varchar(15) primary key, nama varchar(30),
alamat varchar(30))
• Matakuliah (kdmk varchar(15) primary key, matkul
varchar(25), sks int)
• Mengambil (nim char(8), kdmk char(5), nilai int)
Maka untuk membuat tabel dalam MySQL
• CREATE TABLE Mahasiswa (nim varchar(15) primary key,
nama varchar(30), alamat varchar(30))
• CREATE TABLE Matakuliah (kdmk varchar(15) primary
key, matkul varchar(25), sks int)
• CREATE TABLE Mengambil (nim char(8), kdmk char(5),
nilai int)

f. Implementasikan Perancangan Basis Data dengan MySQL berbasis


PHPMyAdmin

62
1) Langkah-langkah masuk ke PHPMyAdmin (admin) pada module
MySQL
a) Klik (Admin) pada module MySQL lalu buka browser
kemudian ketikkan “localhost/phpMyAdmin/” pada url.
b) Kemudian, pilih SQL untuk membuat database baru

2) Perintah MySQL
a) Membuat Database
Create database namadatabase;
Contoh :
Create database universitas;

b) Membuat Tabel
Perintah yang digunakan untuk membuat tabel menggunakan
perintah berikut :
CREATE TABLE nama_tabel (Field TipeData1
(panjangData) NOT NULL PRIMARY KEY, Field2
TipeData2 (panjangData2),…, FieldN TipeDataN
(panjangDataN));
Keterangan :
• Nama_table → nama yang diberikan di tabel baru. Nama
tabel maksimal terdiri dari 8 karakter. Tidak boleh
memakai spasi, terdiri dari huruf.

63
• Field → nama yang diberikan untuk kolom baru,
maksimal terdiri dari 10 karakter. Tidak boleh memakai
spasi, terdiri dari huruf, angka dan lain-lain.
• Type-data → jenis data yang nilainya dimasukkan dalam
kolom yang telah ditentukan.
• Lebar_data → nomor spasi karakter untuk mengikuri data
yang dimasukkan dalam kolom yang telah ditentukan.
• Constraint → Batasan yang digunakan untuk field seperti
NOT NULL, Primary Key,.
Contoh
Struktur database
• Mahasiswa (nim varchar(15) primary key, nama
varchar(30), alamat varchar(30))
• Matakuliah (kdmk varchar(15) primary key, matkul
varchar(25), sks int)
• Mengambil (nim char(8), kdmk char(5), nilai int)
Maka untuk membuat table dalam MySQL
• CREATE TABLE Mahasiswa (nim varchar(15) primary
key, nama varchar(30), alamat varchar(30))
• CREATE TABLE Matakuliah (kdmk varchar(15)
primary key, matkul varchar(25), sks int)
• CREATE TABLE Mengambil (nim char(8), kdmk
char(5), nilai int)

Klik Go untuk melihat apakah berhasil atau tidak

64
4.5 HASIL DAN ANALISA PERCOBAAN
1. Implementasi Perancangan Basis Data dengan MySQL berbasis teks

65
Pada implementasi menggunakan command prompt ini yaitu membuat
database universitas, dengan cara melakukan perintah create. Jika database
telah dibuat maka gunakan perintah use untuk menggunakan database tersebut
dan untuk memberikan table dan juga atribut-atribut yang akan digunakan.
Dalam database universitas terdapat 3 table yaitu mahasiswa, mata kuliah dan
mengambil. Untuk membuat table dan menambahkan atribut digunakan
perintah create table, kemudian berikan atribut-atribut yang akan digunakan.
Setelah semua tabel terisi atribut cek atribut yang ada dalam tabel dengan
menggunakan perintah desc namatabel.

2. Implementasi Perancangan Basis Data dengan MySQL berbasis


PHPMyAdmin

66
Untuk membuat database, tabel dan atribut menggunakan perintah yang sama
seperti pada implementasi DDL berbasis teks menggunakan Command
Prompt, untuk mengecek apakah database berhasil dibuat hanya cukup dengan
mengeklik tombol go.

4.6 TUGAS/SOAL
1. Buatlah perancangan dari salah satu dari beberapa database berikut (ERD &
Relasional):
a. Koperasi simpan pinjam
b. Peminjaman buku/komik
2. Implementasikan fungsi DDL dari perancangan pada no.1

67
4.7 JAWABAN
1. ERD

Relasional

2. DDL berbasis teks

68
69
70
71
DDL menggunakan PHPMyAdmin

72
Tabel anggota

Tabel petugas

73
Tabel Formulir

Tabel Angsuran

74
Tabel simpanan

Tabel pinjaman

75
4.8 SIMPULAN

MySQL adalah suatu perangkat lunak database relasi (Relational Database


Management System atau RDBMS), seperti halnya ORACLE, Postgresql, MS
SQL dan sebagainya. MySQL dibangun, didistrribusikan dan didukung oleh
MYSQL AB. MYSQL AB merupakan perusahaan komersial yang dibiayai oleh
pengembang MYSQL. MySQL AB meyebut produknya sebagai database open
source terpopuler di dunia yang bisa digunakan untuk platform Web dan baik
untuk katagori open source maupun umum.
DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan
atribut-atribut database, table, atribut (kolom), batasan-batasan terhadap suatu
atribut serta hubungan antar table atau bagian sari sql yang digunakan untuk
mendefinisikan data dan objek database.

4.9 LAMPIRAN

76
77
LAPORAN SEMENTARA
PRAKTIKUM BASIS DATA

Penyusun :
Ella Fransiska (200631100081)

LABORATORIUM SISTEM INFORMASI PENDIDIKAN


FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS TRUNOJOYO MADURA
2021

78
MODUL V : DATA MANIPULATION LANGUAGE

5.1 TUJUAN
1. Praktikan dapat memahami perintah DML
2. Praktikan dapat memahami dan memanipulasi data dalam database

5.2 LANDASAN/DASAR TEORI


DML (Data Manipulation Language) adalah Bahasa yang memungkinkan
pengguna mengakses atau memanipulasi data seperti yang diatur oleh model data.
Manipulasi data adalah :
1. Pengambilan informasi yang tersimpan dalam basisdata
2. Penempatan informasi baru dalam basisdata
3. Penghapusan informasi dari basisdata
4. Modifikasi informasi yang tersimpan dalam basisdata

DML (Data Manipulation Language) merupakan Bahasa yang bertujuan


memudahkan pemakai untuk mengakses data sebagaimana direpresentasikan oleh
model data. Ada 2 jenis DML, yaitu :
1. Procedural, yang mensyaratkan agar pemakai menentukan, data apa yang
diinginkan serta bagaimana cara mendapatkannya.
2. Nonprosedural, yang membuat pemakai dapat menentukan data apa yang
diinginkan tanpa menyebutkan bagaimana cara mendapatkannya.

Query adalah pernyataan yang meminta pengguna mengambil informasi. Bagian


DML yang terlibat dalam pengambilan informasi disebut bahasa query. Istilah
Bahasa query sering disamakan dengan istilah bahasa manipulasi data. Sedangkan
SQL adalah sebuah sintaks untuk mengeksekusi query.

1. INSERT
Untuk menambahkan baris pada table.
Cara 1 : menambahkan baris tiap kolom

79
Insert into namatabel values (nilai1,nilai2,,,,nilai-n)
Cara 2: menambah baris hanya dengan mengisi data pada kolom tertentu
Insert into namatabel (kolom1,kolom2,…kolom-n) values
(nilai1,nilai2,…nilai-n)
Jika data type string,date,time maka nilainya diapit dengan tanda petik tunggal
atau ganda. Jika tipe numeric boleh tidak diberi tanda petik. Kolom-kolom
yang tidak disebutkan pada insert secara otomatis akan diisi dengan null dan
kolom yang tidak disebutkan dalam insert haruslah yang tidak not null.

2. SELECT
Secara umum perintah select hanya difungsikan untuk menampilkan data yang
ada di dalam suatu tabel. Tetapi dalam pengembangannya, perintah ini akan
menjadi sebuah perintah yang sangat penting dan berpengaruh hingga saat
pemrogrsaman di stored procedures dan triggers. Struktur perintah select
seperti berikut :
SELECT[DISTICT] select_list FROM table_source [WHERE
search_condition];

a. Untuk memilih semua kolom dari tabel, dapat menuliskan tanda asteristik
sesudah kata select. Symbol * berarti semua kolom, seperti berikut :
SELECT*FROM nama_tabel;

b. Menampilkan data untuk kolom tertentu


SELECT kolom1,kolom2,kolom-n FROM namatabel;

c. Menampilkan data dengan kondisi tertentu dengan klausa WHERE.


Klausa WHERE digunakan untuk menntukan kriteria seleksi. Untuk
memilih data suatu tabel dengan kriteria tertentu, klausa WHERE dapat
ditambahkan pada pernyataan SELECT. Perintah yang digunakan seperti
berikut :

80
SELECT nama_kolom FROM namatabel WHERE kolom operator
nilai;
Dengan klausa WHERE, operator berikut seperti tabel berikut :
OPERATOR KETERANGAN OPERATOR KETERANGAN
= Sama dengan = Sama dengan
<> Tidak sama <> Tidak sama
dengan dengan
> Lebih besar dari > Lebih besar dari
< Lebih kecil dari < Lebih kecil dari

3. KONDISI LIKE
Kondisi LIKE digunakan untuk menentukan pencarian berdasarkan pola
tertentu pada suatu kolom, perintah yang digunakan seperti berikut :
SELECT nama_kolom FROM nama_tabel WHERE nama_kolom LIKE
pola;
Tanda “%” dapat digunakan untuk menentukan Wlidcard (sembarang huruf),
baik sebelum maupun sesudah pola. Perlu diingat operasi ini, hanya untuk
pembandingan nilai bertipe string. Perintah SELECT adalah perintah untuk
menampilkan data yang ada di dalam suatu tabel, yang mana dalam
pengembangannya perintah ini akan menjadi sebuah perintah yang sangat
penting dan berpengaruh hingga saat pemrograman di stored procedures dan
string.

4. UPDATE
Pernyataan UPDATE digunakan untuk modifikasi data dalam tabel
menggunakan perintah berikut :
UPDATE nama_tabel SET nama_kolom = nilai_baru WHERE
nama_kolom = nilai;

5. DELETE

81
Pernyataan DELETE digunakan untuk menghapus baris pada tabel, perintah
yang digunakan seperri berikut :
DELETE FROM nama_tabel WHERE nama_kolom = nilai;

5.3 ALAT DAN BAHAN


1. Komputer/laptop
2. Software XAMPP
3. Command Prompt

5.4 LANGKAH-LANGKAH PERCOBAAN


Langkah-langkah praktikum
1. Buatlah database universitas dan didalamnya terdapat tabel mahasiswa dan
matakuliah dengan struktur tabel berikut :
a. Tabel Mahasiswa

b. Tabel Matkul

2. Memasukkan data pada tabel


Perintah yang digunakan adalah :
INSERT INTO nama_tabel VALUES (‘isi_field1’, ‘isi_field2’,…,
‘isi_field3’);
Contoh :

82
3. Menampilkan data pada tabel
Untuk menampilkan dari sebuah tabel dapat menggunakan perintah berikut :
SELECT (field1,field2, …, field-n) FROM nama_tabel;
Query diatas mengartikan bahwa data yang akan ditampilkan didalam tabel
hanya field tertentu.
Atau
SELECT*FROM nama_tabel;
Query diatas mengartikan bahwa data dari seluruh field yang terdapat dalam
tabel akan ditampilkan.
Contoh :
a. Menampilkan data dari seluruh field

b. Menampilkan kolom nama dan alamat saja

4. Menampilkan data dengan kondisi where

83
WHERE yang artinya dimana, untuk menampilkan data menggunakan
perintah where (dimana) dapat menggunakan perintah berikut:
SELECT*FROM nama_tabel WHERE kondisi;
Contoh : menampilkan data dengan perintah where

Contoh diatas mengartikan bahwa perintah tersebut meminta untuk


menampilkan semua data yang ada pada tabel Mahasiswa yang isi data dari
field alamat hanya sampang.
5. Menampilkan data dengan BETWEEN
Between artinya diantara, between berfungsi untuk menampilkan data yang
tertentu, misalnya diantara 100 dan 200. Untuk menampilkan data dengan
between dapat menggunakan perintah berikut :
SELECT*FROM nama_tabel WHERE kondisi BETWEEN nilai_1
AND nilai_2;
Contoh :
Isilah tabel matkul dengan data seperti berikut:

Tampilkan data dengan SKS antara 2 dan 4

84
6. Menampilkan data dengan perintah LIKE
Perintah LIKE kadang dibutuhkan dalam pembuatan database yaitu dalam
menampilkana data tertentu yang berkaitan dengan kata-kata yang diinginkan
perintah yang digunakan adalah:
SELECT*FROM nama_tabel WHERE nama_kolom LIKE
‘%nama_kaitan%’;
Contoh :

7. Menampilkan data dengan pengurutan Sorting (ORDER BY)


Fungsi ini digunakan untuk melakukan pengurutan data, sehingga data dari
sebuah atau beberapa tabel dapat tampil berurutan sesuai keinginan.
Pengurutan data terbagi menjadi dua :

85
a. ASC (Pengurutan dengan ascending)
b. DESC (Pengurutan dengan descending)
Perintah yang digunakan adalah :
SELECT*FROM nama_tabel ORDER BY kolom type;
Contoh :

8. Menampilkan data dengan pengelompokkan data (GROUP BY)


Group By adalah fungsi untuk mengelompokkan data dalam sebuah kolom
yang ditunjuk. Fungsi ini akan menghasilkan kelompok data dengan
menghilangkan data yang sama dalam satu tabel. Maka apabila dalam satu
kolom terdapat beberapa data yang sama maka data yang akan ditampilkan
hanya salah satu. Perintah yang digunakan seperti berikut:
SELECT*FROM nama_tabel GOUP BY nama_kolom;
Contoh :
Tampilkan satu matkul dengan SKS bernilai 4

86
Kelompokkan data berdasarkan SKS

9. Modifikasi data dalam tabel (UPDATE)


Perintah yang digunakan adalah :
UPDATE nama_tabel SET nama_kolom = nilai_baru WHERE
nama_kolom = nilai;
Merubah data pada kolom nama dengan berdasarkan nama= ‘Adent’

Merubah data alamat berdasarkan NIM=’190631100999’

87
10. Menghapus baris dalam tabel
Perintah untuk menghapus semua data yang terdapat pada tabel :
DELETE FROM nama_tabel;
Sedangkan berikut perintah untuk menghapus data yang diinginkan dari
sebuah tabel :
DELETE FROM nama_tabel WHERE kondisi;
Contoh :
Hapus data yang beralamat di Malang

Menghapus semua data table matkul

5.5 ANALISA PERCOBAAN

88
ada banyak cara atau sintaks yang bis akita gunakan untuk memodifikasi database,
untuk menambahkan data ke database kitab isa menggunakan perintah insert,
aturan dalam perintah insert ini data yang ditulis urutannya harus sesuai dengan
kolomnya. Ada pula sintaks update yang fungsinya untuk mengapdate data atau
mengubah data, sedangkan perintah select digunakan untuk menampilkan data
yang ingin ditampilkan atau dicari, dan perintah delete fungsinya untuk
menghabuh baris data ataupun menghapus table.

5.6 TUGAS/SOAL
1. Dari perancangan database modul 4 yang telah dibuat, implementasikan
perintah DML sebagai berikut:
a. INSERT
b. SELECT, dengan perintah :
1) WHERE
2) LIKE
3) BETWEEN
4) ORDER BY
5) GROUP BY
2. Dari perancangan database di modul 4 yang telah dibuat, implementasikan
perintah DML sebagai berikut :
a. UPDATE
b. DELETE

5.7 JAWABAN
1. Hasil

89
a. Insert

b. Select
1) Where

2) Like

3) Between

4) Order by

90
5) Goup by

2. Hasil
a. Update

b. Delete

5.8 SIMPULAN
DML (Data Manipulation Language) adalah Bahasa yang memungkinkan
pengguna mengakses atau memanipulasi data seperti yang diatur oleh model data.
Query adalah pernyataan yang meminta pengguna mengambil informasi. Bagian
DML yang terlibat dalam pengambilan informasi disebut bahasa query. Istilah

91
Bahasa query sering disamakan dengan istilah bahasa manipulasi data. Sedangkan
SQL adalah sebuah sintaks untuk mengeksekusi query.
Dalam DML terdapat beberapa istilah yang digunakan, diantaranya yaitu insert
(untuk menambahkan isi data), select, update dan delete.

5.9 LAMPIRAN

92
LAPORAN SEMENTARA
PRAKTIKUM BASIS DATA

Penyusun :
Ella Fransiska (200631100081)

LABORATORIUM SISTEM INFORMASI PENDIDIKAN


FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS TRUNOJOYO MADURA
2021

93
MODUL VI : RELASI DAN JOIN

6.1 TUJUAN
1. Praktikan mampu memahami keterhubungan entitas di dalam basis data.
2. Praktikan dapat memahami jenis-jenis operasi pengambilan data di beberapa
entitas.
3. Praktikan dapat menyelesaikan kasus-kasus retrieval yang melibatkan lebih
dari satu entitas.

6.2 LANDASAN/DASAR TEORI


1. JOIN
Terkadang kita harus memilih dari dua tabel atau lebih untuk mendapatkan
hasil yang komplit. Oleh karena itu, kita harus melakukan sebuah JOIN. Join
merupakan operasi yang digunakan untuk menggabungkan dua tabel atau
lebih dengan hasil berupa gabungan dari kolom-kolom yang berasal dari tabel-
tabel tersebut. Pada join sederhana, tabel-tabel digabungkan dan didasarkan
pada pencocokan antara kolom pada tabel yang berbeda. Tabel-tabel dalam
sebuah basisdata dapat dihubungkan satu sama lain menggunakan kunci.
Kunci utama adalah sebuah kolom dengan nilai unik untuk masing-masing
baris. Tujuannya adalah menggabungkan data antar tabel tanpa mengulangi
semua data pada setiap tabel. Kita bisa menggunakan kata kunci JOIN untuk
memilih data.
a. Inner Join

Inner join pada dasarnya adalah menemukan persimpangan (intersection)


antara dua buah tabel. Inner join digunakan untuk menampilkan data dari
dua tabel yang berisi data sesuai dengan syarat di belakang on (tidak boleh

94
null), dengan kata lain semua data dari tabel kiri mendapat pasangan data
dari sebelah kanan.
Sintaks inner join diperlihatkan sebagai berikut :
SELECT field1, field2, … FROM tabel1 INNER JOIN tabel2 ON
tabel1.kunci_utama = tabel2.kunci_asing
b. Outer Join
Outer join dibagi ke dalam tiga jenis, yaitu left join, right join dan full join
Left Join

Left join digunakan untuk menampilkan semua data dari tabel sebelah kiri
perintah left join beserta pasangannya dari tabel sebelah kanan. Meskipun
terdapat data dari sebelah kiri tidak memiliki pasangan, tetap akan
ditampilkan dengan pasangannya berupa nilai NULL.
Sintaks left outer join diperlihatkan sebagai berikut :
SELECT field1, field2, … FROM tabel1 LEFT JOIN tabel2 ON
tabel1.kunci_utama = tabel2.kunci_asing

Right Join

Right join digunakan untuk menampilkan semua data dari tabel sebelah
kanan perintah right join beserta pasanganyya dari tabel sebelah kiri.
Meskipun terdapat data dari sebelah kanan tidak memiliki pasangan, tetap
akan ditampilkan dengan pasangannya berupa nilai NULL.
Sintaks right outer join diperlihatkan sebagai berikut :

95
SELECT field1, field2, … FROM tabel1 RIGHT JOIN tabel2 ON
tabel1.kunci_utama=tabel2.kunci_asing

Full Join

Full join pada hakekatnya merupakan kombinasi dari left dan right join.
Sintaks full outer join diperlihatkan sebagai berikut :
SELECT field1, field2, … FROM tabel1 LEFT JOIN tabel2 ON
tabel1.kunci_utama=tabel2.kunci_asing UNION SELECT field1,
field2, … FROM tabel1 RIGHT JOIN tabel2 ON tabel1.kunci_utama
= tabel2.kunci_asing

c. Natural Join
Natural join digunakan untuk menampilkan data dari dua tabel yang berisi
data. Jika ada kolom yang sama dengan tipe data yang sama pada kedua
tabel, maka akan ditampilkan hanya satu kolom saja.
Sintaks natural join diperlihatkan sebagai berikut :
SELECT*FROM tabel1 NATURAL JOIN tabel2

6.3 ALAT DAN BAHAN


1. Komputer / laptop
2. Software XAMPP
3. Command Prompt
4. Koneksi Jaringan Internet (*jika dibutuhkan)

6.4 LANGKAH-LANGKAH PERCOBAAN


Relasi

96
1. Dari database universitas pada praktikum sebelumnya, isilah tabel yang telah
ada seperti berikut:

a. Tabel mahasiswa

b. Tabel mengambil

c. Tabel Matkul

2. INNER JOIN
Sintaks inner join diperlihatkan sebagai berikut :

97
3. LEFT JOIN
Sintaks left join diperlihatkan sebagai berikut :

4. RIGHT JOIN
Sintaks right join diperlihatkan sebagai berikut :

5. NATURAL JOIN
Sintaks natural join diperlihatkan sebagai berikut :

6. FULL JOIN
Sintaks full join diperlihatkan sebagai berikut :

98
6.5 HASIL DAN ANALISA PERCOBAAN
1. Hasil

99
2. Analisa
Ada berbagai macam jenis join yang dapat digunakan dalam database, untuk
inner join, left join dan right join kolom yang memiliki nama yang sama tetap
dipisah, akan tetapi jika pada natural join kolom yang sama akan dipilih satu
saja yang akan dihgunakan, sedangkan pada full join kita harus memperhatika
kolom yang akan digabungkan, jika jumlah kolom berbeda juga akan
mempengaruhi proses penggabungan, sehingga akan timbul kolom dengan
isian NULL.

6.6 TUGAS/SOAL
1. Dari perancangan database tugas di modul 5, implementasikan perintah relasi
berikut :
a. Inner join
b. Left join
c. Right join
d. Natural join
e. Full join

6.7 HASIL
1. Hasil implementasi
a. Inner join

b. Left join

c. Right join

100
d. Natural join

e. Full join

6.8 SIMPULAN
Join merupakan operasi yang digunakan untuk menggabungkan dua tabel atau
lebih dengan hasil berupa gabungan dari kolom-kolom yang berasal dari tabel-
tabel tersebut. Pada join sederhana, tabel-tabel digabungkan dan didasarkan pada
pencocokan antara kolom pada tabel yang berbeda. Tabel-tabel dalam sebuah
basisdata dapat dihubungkan satu sama lain menggunakan kunci.
Join ada beberapa macam, seperti inner join, left join, right join, natural join dan
juga full join.

6.9 LAMPIRAN

101
LAPORAN SEMENTARA
PRAKTIKUM BASIS DATA

Penyusun :
Ella Fransiska (200631100081)

LABORATORIUM SISTEM INFORMASI PENDIDIKAN


FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS TRUNOJOYO MADURA
2021

102
MODUL VII : MODIFIKASI DATA (MYSQL DAN PHP)

7.1 TUJUAN
Dalam praktikum ini , diharapkan :
1. Memahami Langkah-langkah koneksi PHP dengan MySQL.
2. Membuat aplikasi yang terkoneksi dengan database MySQL
3. Mengembangkan kemampuan dalam membangun system basis data berbasis
client/server.

7.2 LANDASAN/DASAR TEORI


1. PHP
PHP adalah salah satu Bahasa pemrograman di internet. PHP bersifat cepat,
gratis dan murah. Selain itu PHP mendukung pengguaan database seperti
MySQL, PostgreSQL, mSQL, dan Oracle. PHP dapat dijalankan melalui
browser, maka diharuskan terlebih dahulu untuk menginstall web server
(misalnya Apache,PWS,IIS). Sedangkan untuk menjalankan MySQL tidak
perlu menginstall web server, hanya saja jika ingin dijalankan melalui
browser, maka harus menginstall web server.

2. MySQL
MySQL adalah Relation Database Management System (RDBMS) yang
didistribusikan secara gratis dibawah lisensi GPL (General Public Licence).
Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh
dijadikan produk turunan yang bersifat closed source atau komersial. MySQL
sebenarnya merupakan turunan salah satu konsep utama dalam database sejak
lama, yaitu SQL. SQL adalah sebuah konsep pengoperasian database,
terutama untuk pemilihan atau selesi dan pemasukan data yang
memungkinkan pengoperasian data dikerjakan dengan mudah.
Sebagai database server, MySQL dapat dikatakan lebih unggul dari database
server laninnya dalam hal query data. Hal ini terbukti query yang dilakukan
oleh single user, kecepatan query MySQL bisa sepuluh kali lebih cepat dari

103
PostgreSQL dan lima kali lebih cepat dibandingkan Interbase. Selai itu
MySQL juga memiliki beberapa keistimewaaan, antara lain:

7.3 ALAT DAN BAHAN


1. Laptop/komputer
2. Command Prompt
3. XAMPP
4. Koneksi internet

7.4 LANGKAH-LANGKAH PERCOBAAN


1. Buka aplikasi Sublime kemudian buatlah 5 file dari database universitas,
kemudian simpan di C:/xampp/htdoc/praktikum.

2. Buatlah file pertama yaitu koneksi.php, kemudian ketikkan code berikut :


<?php
$koneksi = mysqli_connect ("localhost", "root", "", "universitas");
if (mysqli_connect_errno()) {
echo "Koneksi Gagal: " .mysqli_connect_error();
}
?>

3. Buatlah file kedua yaitu view_mahasiswa.php, kemudian ketikkan kode


berikut :
<?php include("koneksi.php");?>

104
<p style="font : Cheap Fire; font-size : 30px; text-align : left;"> :: DATA
MAHASISWA :: </p>
<HR width="50%" align="left">
<a href="tambah_mahasiswa.php"><input type ="submit" name
="submit" value ="TAMBAH"></a><br><br>
<table width="800" border="1" align="left">
<tr bgcolor="#00CCFF">
<th width="150" scope="col">NIM</th>
<th width="350" scope="col">NAMA MAHASISWA</th>
<th width="300" scope="col">ALAMAT</th>
<th width="250" colspan="2" scope="col">AKSI</th>
</tr>
<?php
//mengambil data dari tabel dokter ntuk menampilkan
$tampil = mysqli_query($koneksi, "select * from mahasiswa order by
nim");
$cek = mysqli_num_rows($tampil);
//mengetahui jumlah baris dalam tabel db dalam perintah yang ada
didalam $tampil
//apabila data kosong if($cek==0) {
echo"<h3>Maaf Data Masih Kosong</h3>";
}
else {
while($data=mysqli_fetch_array($tampil)) {
//mengubah baris data yang dipilih menjadi pecahan array?>
<tr>
<td><?php echo $data['nim'] ?></td>
<td><?php echo $data['nama'] ?></td>
<td><?php echo $data['alamat'] ?></td>
<td width="63" align="center"><a href="edit_mahasiswa.php?id=<?php
echo $data['nim']?>">Edit</a></td>

105
<td width="57"
href="hapus_mahasiswa.php?id=<?php
$data['nim']?>">Delete</a></td>
</tr>
align="center"><a
echo
<?php
}
}
?>
</table>

4. Buatlah file ketiga yaitu tambah_mahasiswa.php, kemudian ketikkan kode


berikut :
<p style ="font :Cheap Fire; font-size :30px; text-align :left;"> ::
TAMBAH DATA MAHASISWA ::</p>
<hr width="50%" align="left">
<form action="" method="post">
<table width="800" border="0" align="left">
<tr>
<td width="157">NIM</td>
<td width="10">:</td>
<td width="419">
<input name="nim" type="text" id="nim" maxlength="13"></td>
</tr>
<tr>
<td>NAMA</td>
<td>:</td>
<td><input name="nama"
type="text"
id="nama"
maxlength="50"></td>
</tr>
<tr>
<td>ALAMAT</td>
<td>:</td>
<td><input name="alamat" type="text" id="alamat"
maxlength="30"></td>
</tr>
<tr>

106
<td></td>
<td></td>
</tr>
<td><input
value="SIMPAN">
type="submit"
name="submit"
id="submit"
<input type="reset" name="reset" id="reset" value="RESET"></td>
</tr>
</table>
</form>
<p>
<?php include("koneksi.php");
if(isset($_POST['submit'])) {
$nim=$_POST['nim'];
$nama=$_POST['nama'];
$alamat=$_POST['alamat'];

5. Buatlah file ke empat yaitu edit_mahasiswa.php, kemudian ketikkan code


berikut
<p style ="font:Cheap Fire; font-size:30px; text-align:left;">:: EDIT
DATA MAHASISWA ::</p>
<HR width="50%" align="left">
<form action="" method="post" enctype="multipart/form-data"
name="form1">
<?php include('koneksi.php');
$id = $_GET['id'];
$ambildata=mysqli_query($koneksi, "select * from mahasiswa where
nim='$id'");
$data=mysqli_fetch_array($ambildata);
?>
<table width="580" border="0">
<tr>
<td width="157">NIM</td>
<td width="10">:</td>
<td width="419">
<input name="nim" type="text" id="nim" maxlength="13"
value="<?php echo $data['nim'] ?>"></td>
</tr>
<tr>
<td>NAMA</td>
<td>:</td>
<td><input name="nama" type="text" id="nama" maxlength="50"
value="<?php echo $data['nama'] ?>"></td>

107
</tr>
<tr>
<td>ALAMAT</td>
<td>:</td>
<td><input name="alamat" type="text" id="alamat" maxlength="30"
value="<?php echo $data['alamat'] ?>"></td>
</tr> <tr>
<td></td> <td></td>
<td><input
value="SIMPAN">
type="submit"
name="submit"
id="submit"
<input type="reset" name="reset" id="reset" value="RESET">
</td>
</tr>
</table>
</form>
<p>
<?php
include("koneksi.php"); if(isset($_POST['submit'])){
$nim=$_POST['nim'];
$nama=$_POST['nama'];
$alamat=$_POST['alamat'];
if($nim!= "") {
$input=mysqli_query($koneksi, "update mahasiswa set
nim='$nim',nama='$nama',alamat='$alamat' where nim='$nim'");
if(!$input) {
echo"<script language='javascript'>alert('data gagal diupdate');
document.location='view_mahasiswa.php' </script>";
} else {
echo"<script language='javascript'>alert('data telah diupdate');
document.location='view_mahasiswa.php' </script>";
}
} else {
echo"<script language='javascript'>alert('NIM belum terisi');
document.location='view_mahasiswa.php' </script>";
}
}
?>

6. Buatlah file ke lima yaitu hapus_mahasiswa.php, kemudian ketikkan code


berikut
<?php include('koneksi.php');
$id = $_GET['id'];

108
$hapusdata = mysqli_query($koneksi, "delete from mahasiswa where
nim='$id'");
if ($hapusdata) {
echo "<script language='javascript'>alert('data telah dihapus');
document.location='view_mahasiswa.php' </script>";
}
?>

7. Untuk melihat hasilnya yaitu : buka web browser dan ketikkan


localhost/lapres

7.5 HASIL DAN ANALISA PERCOBAAN


Hasil

File koneksi

File view_mahasiswa

109
Pada file ini akan menampilkan isi dari tabel mahasiswa yang mana bisa dilakukan
pengeditan dan juga penghapusan

File tambah_mahasiswa

Pada tabel ini kitab isa melakukan penamban isi dari data tabel mahasiswa, jika
data yang dimasukkan salah bisa dilakukan reset jika sudah benar bisa langsung
di simpan.

File edit_mahasiswa

Pada tabel ini bisa dilakukan pengeditan data yang telah disimpan

File hapus_mahasiswa

110
7.6 TUGAS/SOAL
1. Buatlah komentar singkat dari maksud setiap baris pada setiap code.
7.7 JAWABAN
1. File koneksi
<?php
$koneksi = mysqli_connect ("localhost", "root", "", "universitas");
//Untuk masuk ke direktory localhost/root/universitas
if (mysqli_connect_errno()) { echo "Koneksi Gagal: "
.mysqli_connect_error(); }
//tampilan_tulisan_kalau_tidak_bisa_masuk_ke_directory_tersebut
?>

2. File view_mahasiswa
<?php include("koneksi.php");
//maksuknya adalah view_mahasiswa.php ini terhubung dengan file
koneksi.php
?>
<p style="font : Cheap Fire; font-size : 30px; text-align : left;"> ::
DATA
MAHASISWA :: </p>
<HR width="50%" align="left">
<a href="tambah_mahasiswa.php"><input type
="submit" name
="submit" value ="TAMBAH"></a><br><br>

<table width="800" border="1" align="left">

111
<tr bgcolor="#00CCFF">
<th width="150" scope="col">NIM</th>
<th width="350" scope="col">NAMA MAHASISWA</th>
<th width="300" scope="col">ALAMAT</th>
<th width="250" colspan="2" scope="col">AKSI</th>
</tr>

<?php
//mengambil data dari tabel mahasiswa untuk ditampilkan
$tampil = mysqli_query($koneksi, "select * from mahasiswa order
by nim");
//menampilkan data mahasiswa berdasarkan urutan nim
$cek = mysqli_num_rows($tampil);
//mengetahui jumlah baris dalam tabel db dalam perintah yang ada
didalam $tampil

//apabila data kosong if($cek==0) { echo"<h3>Maaf Data Masih


Kosong</h3>";

while(
$data=mysqli_fetch_array($tampil)
)
{
//mengubah baris data yang dipilih menjadi pecahan array
?>
<tr>
<td><?php echo $data['nim'] ?></td>
<td><?php echo $data['nama'] ?></td>
<td><?php echo $data['alamat'] ?></td>

112
<td width="63" align="center"><a
href="edit_mahasiswa.php?id=<?php echo
$data['nim']?>">Edit</a></td>
<td width="57" align="center"><a
href="hapus_mahasiswa.php?id=<?php echo
$data['nim']?>">Delete</a></td> </tr>
<?php
}
?>
</table>

3. File tambah_mahasiswa
<p style ="font :Cheap Fire; font-size :30px; text-align :left;"> ::
//menentukan jenis font, ukuran dan perataan teks
TAMBAH DATA MAHASISWA ::</p> //sebagai judul
<hr width="50%" align="left">
<form action="" method="post">
<table width="800" border="0" align="left"> //untuk menentukan
lebar dari garis pembatas serta ketebalan garis dan perataannya
<tr>
<td width="157">NIM</td> //untuk menentukan lebar dari kolom
NIM
<td width="10">:</td> //untuk menentukan lebar jarak dari :
<td width="419"> //untuk menentuka lebar kolom dari isi data
<input name="nim" type="text" id="nim" maxlength="13"></td>
//menentukan atribut yang akan diisi serta jenis teks dan Panjang
maaksimal dari isi data atribut
</tr>
<tr>
<td>NAMA</td> //memberikan nama

113
<td>:</td>
<td><input name="nama" type="text" id="nama"
maxlength="50"></td> //menentukan jenis atribut, tipe data dan
juga Panjang maksimal
</tr>
<tr>
<td>ALAMAT</td> //memberikan nama pada baris selanjutnya
<td>:</td>
<td><input name="alamat" type="text" id="alamat"
maxlength="30"></td> //menentuka nama,type data dan juga
Panjang maksimal pada kolom tsb
</tr>
<td><input type="submit" name="submit"
id="submit" value="SIMPAN"> //membuat tombol simpan untuk
menyimpan data yang dimasukkan
<input type="reset" name="reset" id="reset"
value="RESET"></td> //membuat tombol reset untuk mereset atau
mengatur ulang data yang telah diisikan
</tr>
</table>
</form>
<p> <?php
include("koneksi.php"); //mengoneksikan dengan database yang
sedang digunakan
if(isset($_POST['submit'])) {
$nim=$_POST['nim'];
$nama=$_POST['nama'];
$alamat=$_POST['alamat'];
if($nim!= "") { //memanggil
$input=mysqli_query($koneksi, "insert into
mahasiswa(nim,nama,alamat)

114
values('$nim','$nama','$alamat')"); if(!$input) {
echo"<script language='javascript'>alert('data gagal
tersimpan'); //tampilan jika data yang dimasukkan tidak bisa
tersimpan
document.location='view_mahasiswa.php'</script>";
} else {
echo"<script language='javascript'>alert('data telah
tersimpan'); document.location='view_mahasiswa.php' </script>"; }
//tampilan jika data yang masuk telah tersimpan kemudian masuk
pada file view_mahasiswa
} else { echo"<script language='javascript'>
alert('NIM belum terisi'); //tampilan jika data nim belum terisi
document.location='view_mahasiswa.php' </script>"; //masuk pada
view_mahasiswa
}
}
?>

4. File edit_mahasiswa
<p style ="font:Cheap Fire; font-size:30px; text-align:left;">:: EDIT
DATA MAHASISWA ::</p> //menentuka jenis font,ukuran dan
perataan pada bagian judul
<HR width="50%" align="left">
<form action="" method="post"
enctype="multipart/form-data" name="form1">
<?php
include('koneksi.php'); //mengoneksikan dengan database
$id = $_GET['id'];
$ambildata=mysqli_query($koneksi, "select * from mahasiswa
where nim='$id'"); //mengambil data mahasiswa sesuai dengan nim

115
$data=mysqli_fetch_array($ambildata);
?>
<table width="580" border="0">
<tr>
<td width="157">NIM</td> menentukan lebar kolom Nim
<td width="10">:</td> //menentukan jarak antara :
<td width="419"> //menentukan lebar atau jarak kolom data yang
akan diisi
<input name="nim" type="text" id="nim"
maxlength="13" value="<?php echo $data['nim'] ?>"></td>
//menentukan nama atribut, typedata dan juga length atau panjang
maksimal data yang akan diisikan
</tr> <tr>
<td>NAMA</td>
<td>:</td>
<td><input name="nama" type="text" id="nama" maxlength="50"
value="<?php echo $data['nama'] ?>"></td> //menentukan nama
atribut, typedata dan juga length atau panjang maksimal data yang
akan diisikan
</tr> <tr>
<td>ALAMAT</td>
<td>:</td>
<td><input name="alamat" type="text" id="alamat"
maxlength="30" value="<?php echo $data['alamat'] ?>"></td>
//menentukan nama atribut, typedata dan juga length atau panjang
maksimal data yang akan diisikan
</tr> <tr>
<td></td> <td></td>
<td><input type="submit" name="submit"
id="submit" value="SIMPAN"> //membuat tombol untuk
menyimpan

116
<input type="reset" name="reset" id="reset" value="RESET">
//membuat tombol untuk mereset ulang data yang diisikan
</td>
</tr>
</table>
</form>
<p>
<?php
include("koneksi.php"); if(isset($_POST['submit'])){
$nim=$_POST['nim'];
$nama=$_POST['nama'];
$alamat=$_POST['alamat'];

if($nim!= "") {
$input=mysqli_query($koneksi, "update mahasiswa
set nim='$nim',nama='$nama',alamat='$alamat' where
nim='$nim'"); if(!$input) {
echo"<script language='javascript'>alert('data gagal diupdate');
document.location='view_mahasiswa.php' </script>"; //tampilan
ketika data gagal diupdate
} else {
echo"<script language='javascript'>alert('data telah diupdate');
document.location='view_mahasiswa.php' </script>"; } //tampilan
ketika data telah diupdate dan menampilkan file view mahasiswa
} else { echo"<script language='javascript'>alert('NIM belum
terisi'); document.location='view_mahasiswa.php' </script>";
//tampilan jika data nim belum terisi
}
}
?>

117
5. File hapus mahasiswa
<?php include('koneksi.php');
$id = $_GET['id'];
$hapusdata = mysqli_query($koneksi, "delete from mahasiswa
where nim='$id'"); //scrip untuk menghapus data sesuai nim yang
diinginkan
if ($hapusdata) { echo "<script language='javascript'>alert('data
telah dihapus'); document.location='view_mahasiswa.php'
</script>"; } //tampilan ketika data telah dihapus dan akan menuju
pada view_mahasiswa
?>

7.8 SIMPULAN
Pada praktikum kali ini, kita dapat menyimpulkan bahwa kita bisa melakukan
modifikasi database yang telah kita buat dengan menggunakan PHP, selain bisa
melakukan modifikasi dengan mengoneksikan MYSQL dengan PHP dapat
mempermudah kita untuk menghapus data dan juga memodifikasi serta
melakukan penambahan data.

7.9 LAMPIRAN

118
SARAN

Saran yang dapat diberikan untuk laporan praktikum basis data ini adalah :
1. Bagi Asisten Praktikum : ketika diadakan praktikum disarankan agar dilakukan
perekaman atau mungkin memberikan referensi youtube atau video tutorial dalam
praktikum agar para praktikan mampu mempelajari kembali materi yang telah
disampaikan waktu praktikum.
2. Bagi praktikan : dapat melakukan percobaan secara terus menerus agar mengasah
kemampuan serta mampu menerapkan materi yang telah diterima. Praktikan juga
tidak hanya berpacu pada modul serta penjelasan yang telah disampaikan oleh
asprak saja, akan tetapi juga mencari referensi-referensi dari berbagai media.

119
DAFTAR PUSTAKA

Lubis,Adyata. (2016). Basis Data. Deepublish.Yogyakarta


Fathansyah. (2002). Buku Teks Ilmu Komputer : Basis Data. Bandung. Informatika

120
BIODATA PENULIS

Data Pribadi
Nama : Ella Fransiska
Tempat Tanggal Lahir : Tuban, 29 September 2002
Alamat : Dsn. Siwalan Ds. Glagahsari Kec. Soko Kab. Tuban
Email : ellafransiska9@gmail.com

Riwayat Pendidikan
SDN Glagahsari __________________________________________ 2007-2014
Ds. Glagahsari Kec. Soko Kab. Tuban
Mts Tarbiyatul Islam Soko __________________________________ 2014-2017
Ds. Sokosari Kec. Soko Kab. Tuban
MA Tarbiyatul Islam Soko __________________________________ 2017-2020
Gg. Nur Hasyim No 7 , jalan raya Sokosari Kec. Soko Kab. Tuban
Universitas Trunojoyo Madura _______________________________ 2020-sekarang
Kecamatan Kamal, Bangkalan Jawa Timur

121

Anda mungkin juga menyukai