Anda di halaman 1dari 13

LAPORAN PRAKTIKUM

BASIS DATA KOMPUTER

( FUNGSI-FUNGSI MYSQL )

PENYUSUN :

DWI AMANDA (180504020)

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS SAMUDRA
2019/2020

i
KATA PENGANTAR

Segala puji bagi Allah SWT tuhan sekalian alam, yang telah memberikan
saya kemudahan sehingga saya dapat menyelesaikan laporan hasil praktikum ini
dengan tepat waktu. Shalawat serta salam semoga terlimpah curahkan kepada
baginda Nabi Muhammad SAW.

Sehingga akhirnya tersusunlah materi laporan praktikum yang sistematis


ini. Hal ini saya lakukan untuk memenuhi tugas praktikum Basis Data.

Saya tentu menyadari bahwa laporan hasil praktikum ini masih jauh dari kata
sempurna dan masih banyak terdapat kesalahan serta kekurangan di dalamnya.

Untuk itu, saya mengharapkan kritik serta saran dari pembaca untuk
laporan hasil praktikum ini, supaya laporan ini nantinya dapat menjadi laporan
yang lebih baik lagi. Kemudian apabila terdapat banyak kesalahan pada laporan
hasil praktikum ini saya mohon maaf yang sebesar-besarnya.

Saya juga mengucapkan banyak terimakasih kepada semua pihak yang


telah membantu saya dalam menulis dan menyusun laporan hasil praktikum ini.
Demikian, semoga laporan hasil praktikum ini dapat bermanfaat. Terima kasih.

Langsa, Oktober 2019

Penulis

ii
BAB 1 PENDAHULUAN

1.1 Latar Belakang


Data base adalah sekelompok data yang diletakkan secara sistematis dalam
perangkat computer anda. Data itu bias diolah atau juga dimanipulasi
memakai program aplikasi tertentu (software). Adapun berbagai spesifikasi
terkait database yaitu tipe datanya, struktur datanya dan juga berbagai batasan
yang ada pada data yang ingin anda simpan.
Data base ini juga merupakan bagian yang amat penting dalam sebuah
system informasi. Karena data base bias berfungsi sebagai tempat
penyimpanan data-data penting yang nantinya akan diolah lagi untuk
keperluan di waktu yang akan dating.

2.1 Tujuan Praktikum


 Mahasiswa dapat membuat database melalui aplikasi Xampp
 Mahasiswa bisa mengerti bagaimana cara menggunakan aplikasi
Xampp

3.1 Manfaat Praktikum


Manfaat dari praktikum ini adalah mahasiswa bisa mempelajari lebih
lanjut tentang membuat database dari suatu hasil data, menggunakan aplikasi
xampp. Xampp sendiri merupakan kompilasi dari berbagai aplikasi lainnya,
yaitu Apache, MySQL, PHP, dan Perl.

3
BAB 2 DASAR TEORI

Xampp adalah perangkat lunak bebas, yang mendukung banyak system


operasi, merupakan kompilasi dari berbagai program. Xampp merupakan tool
yang menyediakan paket perangkat lunak ke dalam satu buah paket. Dengan
menginstall Xampp maka tidak perlu lagi melakukan instalasi dan konfigurasi
web server Apache, PHP, dan MYSQL secara manual.
Xampp akan menginstalasi dan mengkonfigurasikannya secara
otomatis. Fungsi dari Xampp adalah sebagai server yang berdiri sendiri, yang
terdiri atas program Apache HTTP server, MySQL database, dan penerjemah
bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl.
Sebagai software yang cross platform tentunya dimaksudkan agar semua
orang dapat menggunakannya. Selain sebagai web server, Xampp juga
menunjang beberapa bahasa pemrograman khusus dalam website yakni PHP,
MySQL, dan Perl.
PHP merupakan bahasa suatu bahasa yang sering digunakan oleh
programmer khusus. MySQL merupakan suatu software yang digunakan
untuk mengelola SQL. Perl, bahasa pemrograman yang satu ini tidak hanya
digunakan untuk pengelolan website saja namun juga dalam berbagai hal.
Sebagai web server layaknya hosting sesungguhnya tentu saja melibatkan
banyak bagian-bagian penting yang ada pada Xampp, seperti Htdocs,
phpmyadmin dan control panel. Tiga hal tersebut juga menjadi bagian
terpenting dalam Xampp.

4
BAB 3 ALAT DAN BAHAN

Alat dan bahan dalam praktikum:


1. Laptop/Komputer
2. Aplikasi Xampp
3. Modul Praktikum

5
BAB IV

LANGKAH KERJA

4.1 Membuka Aplikasi Xampp


1. Buka aplikasi Xampp. Aktifkan Apache dan mySQL nya,lalu masuk ke
Xampp-shell.
2. Ketik perintah cd/xampp/mysql/bin . Jika sudah, selanjutnya adalah perintah
mysql –u root .

4.2 Perintah SELECT dari Banyak Tabel dengan JOIN


 Inner Join
Dengan inner join, tabel akan digabungkan dua arah, sehingga tidak ada
data yang NULL di satu sisi.
Cara 1 : Penggabungan dengan WHERE

Berikut ini perintah SQL untuk menggabungkan tabel pelanggan dan pesan:

SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan,


pesan.tgl_pesan FROM pelanggan, pesan WHERE
pelanggan.id_pelanggan=pesan.id_pelanggan;

Cara 2 : Penggabungan dengan INNER JOIN

Berikut ini perintah SQL untuk menggabungkan tabel pelanggan dan pesan:

SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan,

pesan.id_pesan, pesan.tgl_pesan

FROM pelanggan INNER JOIN pesan

ON pelanggan.id_pelanggan=pesan.id_pelanggan;

6
 Outer Join
Dengan outer join, tabel akan digabungkan satu arah, sehingga memungkinkan
ada data yang NULL (kosong) di satu sisi.

 Left Join
Berikut ini perintah SQL untuk menggabungkan tabel pelanggan dan pesan:

SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan,


pesan.tgl_pesan FROM pelanggan LEFT JOIN pesan ON
pelanggan.id_pelanggan=pesan.id_pelanggan;

 Right Join
Berikut ini perintah SQL untuk menggabungkan tabel pelanggan dan pesan:

SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan,


pesan.id_pesan, pesan.tgl_pesan
FROM pelanggan RIGHT JOIN pesan
ON pelanggan.id_pelanggan=pesan.id_pelanggan;

 Menggabungkan Tiga Tabel


Untuk menggabungkan tiga tabel atau lebih, pada dasarnya sama dengan
penggabungan 2 (dua) tabel. Berikut ini perintah SQL nya:

SELECT pesan.id_pesan, produk.id_produk, produk.nm_produk,


detil_pesan.harga, detil_pesan.jumlah
FROM pesan, detil_pesan, produk
WHERE pesan.id_pesan=detil_pesan.id_pesan AND
detil_pesan.id_produk=produk.id_produk;

7
4.3 Pengelompokkan Hasil Query dengan GROUP BY
Perhatikan perintah query berikut ini dan lihat hasilnya:

SELECT pesan.id_pesan, pesan.tgl_pesan,


detil_pesan.jumlah
FROM pesan, detil_pesan
WHERE pesan.id_pesan=detil_pesan.id_pesan;

Berikut ini perintah query dengan group by dan count.

SELECT pesan.id_pesan, pesan.tgl_pesan,


SUM(detil_pesan.jumlah) as jumlah
FROM pesan, detil_pesan
WHERE pesan.id_pesan=detil_pesan.id_pesan
GROUP BY id_pesan;

Selain hasil di atas, kita juga dapat menggunakan tambahan WITH ROLLUP di
belakang group by untuk menampilkan jumlah total seluruh barang. Berikut ini
perintah query dan hasilnya:

SELECT pesan.id_pesan, pesan.tgl_pesan,


SUM(detil_pesan.jumlah) as jumlah
FROM pesan, detil_pesan
WHERE pesan.id_pesan=detil_pesan.id_pesan
GROUP BY id_pesan WITH ROLLUP;

8
4.4 Having

Perintah query berikut ini akan menampilkan jumlah item (jenis) barang
untuk tiap transaksi.

SELECT pesan.id_pesan, COUNT(detil_pesan.id_produk) as


jumlah
FROM pesan, detil_pesan
WHERE pesan.id_pesan=detil_pesan.id_pesan
GROUP BY pesan.id_pesan

Selanjutnya bagaimana jika kita ingin hanya


menampilkan data yang jumlah item barangnya lebih dari 2 (dua)? Mungkin kita
langsung berfikir untuk menggunakan WHERE seperti perintah query sebagai
berikut:

SELECT pesan.id_pesan, COUNT(detil_pesan.id_produk) as


jumlah
FROM pesan, detil_pesan
WHERE pesan.id_pesan=detil_pesan.id_pesan
AND jumlah > 2
GROUP BY pesan.id_pesan

4.5 SubSELECT

 Menampilkan daftar pelanggan yang pernah melakukan transaksi


(pemesanan).

SELECT id_pelanggan, nm_pelanggan FROM pelanggan


WHERE id_pelanggan IN (SELECT id_pelanggan FROM
pesan);

9
 Menampilkan data pemesanan dengan jumlah barang terbanyak.

SELECT id_pesan, jumlah FROM detil_pesan


WHERE jumlah = ( SELECT MAX(jumlah) FROM
detil_pesan);

4.6 Menampilkan Record Secara Random

Berikut ini contoh perintah query untuk menampilkan data pelanggan secara
acak (random):

SELECT id_pelanggan, nm_pelanggan, email


FROM pelanggan ORDER BY RAND()

4.7 Mengunci Tabel

Bentuk umum perintah LOCK :

LOCK TABLE table1 locktype, table2 locktype, ...;

Contoh table-locking:
> LOCK TABLES trans READ, customer WRITE;
> SELECT sum(value) FROM trans WHERE customer_id= some_id;
> UPDATE customer SET total_value=total
WHERE customer_id=some_id;
> UNLOCK TABLES;

10
BAB V ANALISA DAN PEMBAHASAN

 Untuk menggabungkan 2 (dua) atau lebih tabel, kita dapat menggunakan


bentuk perintah JOIN.

Inner Join, Dengan inner join, tabel akan digabungkan dua arah, sehingga tidak
ada data yang NULL di satu sisi.

Outer Join, Dengan outer join, tabel akan digabungkan satu arah, sehingga
memungkinkan ada data yang NULL (kosong) di satu sisi.

Left Join, penggunaan left join akan


menampilkan juga data pelanggan dengan id P0003, walaupun pelanggan
tersebut belum pernah bertransaksi.

Right Join, Dengan right join, tabel yang menjadi acuan adalah tabel sebelah
kanan (tabel pesan), jadi semua isi tabel pesan akan ditampilkan.

Untuk menggabungkan tiga tabel atau lebih, pada dasarnya sama dengan
penggabungan 2 (dua) tabel.

Hasil query terkadang perlu dikelompokkan berdasarkan kriteria atau


kondisi tertentu.

Agar jumlah barang ditampilkan per-transaksi (pemesanan), maka kita


dapat menggunakan fungsi GROUP BY dan juga SUM untuk menjumlahkan
jumlah barang.

Selain hasil di atas, kita juga dapat menggunakan tambahan WITH ROLLUP
di belakang group by untuk menampilkan jumlah total seluruh barang.

Untuk mengatur proses query yang terjadi dalam suatu sistem yang
memiliki user banyak (multi-user-system), kita dapat memanfaatkan dua hal di
MySQL. Pertama kita dapat mengunci tabel (table-locking). Cara ini dapat
dilakukan jika tipe tabel yang digunakan adalah MyISAM. Kedua, dapat
menggunakan perintah BEGIN, COMMIT dan ROLLBACK. Cara ini dapat
dilakukan
jika tipe tabel adalah tabel transaksi, yaitu InnoDB.

Terdapat 4 (empat) prinsip dasar transaksi yang biasa disingkat sebagai


ACID, yaitu:
Atomicity. Atom merupakan komponen terkecil dari materi, atau sesuatu yang
tidak dapat dibagi-bagi lagi. Prinsip ini berlaku pada proses transaksi.
Semua proses (perintah) yang ada di dalam satu paket transaksi harus selesai
semua atau tidak selesai sama sekali. Dengan kata lain, dalam satu
transaksi tidak boleh ada proses (perintah) yang gagal dieksekusi.
Consistency. Bahwa kegagalan satu proses dalam transaksi tidak akan

11
mempengaruhi transaksi lainnya.
Isolation. Secara sederhana, bahwa data yang sedang digunakan dalam satu
transaksi, tidak dapat digunakan oleh transaksi lainnya sebelum seluruh
proses transaksi yang pertama selesai.
Durability. Jika sebuah transaksi selesai dieksekusi, hasilnya tetap tercatat
dengan baik.

Mengunci tabel (table-locking) dapat dilakukan untuk membatasi akses


terhadap suatu tabel jika ada user yang sedang aktif mengakses tabel. Suatu
tabel yang sedang terkunci (locked), tidak dapat diakses dengan bebas oleh user
lain. Untuk mengunci tabel di MySQL dapat menggunakan kata kunci LOCK.

Dimana tipe lock (locktype) yang dapat dipilih antara lain:


READ. Semua user MySQL dapat membaca (mengakses) tabel, namun tabel
tersebut tidak dapat diubah oleh siapapun, termasuk user yang
mengeksekusi perintah LOCK. Dengan kata lain, tabel bersifat read-only.
READ LOCAL. Sama seperti READ, tetapi perintah INSERT dapat dilakukan
selama tidak merubah record (data) yang ada.
WRITE. User yang aktif diperbolehkan untuk membaca dan mengubah tabel
(read-and-write). User yang lain tidak dapat mengubah isi tabel, hanya
dapat membaca tabel (read-only).
LOW PRIORITY WRITE. Seperti halnya WRITE, hanya saja user lain dapat
melakukan READ LOCK.
Untuk membuka tabel yang terkunci, gunakan perintah UNLOCK TABLES;

BEGIN atau START TRANSACTION digunakan untuk memulai transaksi,


COMMIT untuk mengakhiri transaksi dan menyimpan semua perubahan,
sedangkan ROLLBACK digunakan untuk menghentikan proses transaksi dan
mengabaikan semua perubahan yang telah dilakukan.

12
BAB VI PENUTUP

6.1 Kesimpulan

 MySQL adalah perangkat lunak atau software system manajemen


basisdata SQL. SQL adalah bahasa permintaan yang digunakan dalam
mySQL.
 Sistem informasi ini digunakan untuk meningkatkan dan mempermudah
dalam penyajian informasi
 Dengan menggunakan sebuah database server salah satunya mySQL, maka
data yang disimpan akan memiliki tingkat keamanan yang cukup tinggi
karna memiliki system perizinanyang mendetail sehingga tidak
sembarangan orang dapat mengakses data tersebut.

6.2 Saran
Dengan aplikasi Xampp ini baik dosen ataupun mahasiswa yang
menggunakannya dapat saling berinteraksi langsung dengan xampp. Pada aplikasi
xampp sendiri memiliki sebuah keuntungan dimana dalam aplikasi xampp
tersebut sudah banyak mengandung aplikasi-aplikasi lainnya sebagai suatu
aplikasi web server.

13

Anda mungkin juga menyukai