modul praktikum aplikasi basis data 1 - repository bsi

61
i MODUL PRAKTIKUM APLIKASI BASIS DATA 1

Upload: khangminh22

Post on 22-Feb-2023

1 views

Category:

Documents


0 download

TRANSCRIPT

i

MODUL PRAKTIKUM

APLIKASI BASIS DATA 1

ii

KATA PENGANTAR

Database atau basis data adalah kumpulan data yang dikelola sedemikian rupa berdasarkan

ketentuan tertentu yang saling berhubungan sehingga mudah dalam pengelolaannya. Melalui

pengelolaan tersebut pengguna dapat memperoleh kemudahan dalam mencari informasi,

menyimpan informasi dan membuang informasi. Basis Data (Database) dapat dibayangkan

sebagai sebuah lemari arsip. Jika kita memiliki sebuah lemari arsip dan berwenang untuk

mengelolanya. Modul aplikasi basis data ini disusun sebagai bahan ajar bagi pembaca Program

Studi Sistem Informasi Kampus Kota Pontianak Universitas Bina Sarana Informatika, sehingga

mampu mengenal dan mendalami bagaiaman memahami serta mengimplementasikan

pembuatan database. Pengembangan modul ini lebih kepada pengenalan serta praktek

mengenai database yang nantinya akan dapat menjadi bahan rujukan bagi mahasiswa yang

mendapatkan matakuliah ini.

Pontianak, 19 April 2019

Eri Bayu Pratama, M.Kom

iii

DAFTAR ISI

KATA PENGANTAR ........................................................................................................................... ii

DAFTAR ISI......................................................................................................................................... iii

BAB 1 ..................................................................................................................................................... 1

KONSEP DASAR BASIS DATA ........................................................................................................ 1

1.1. Database ...................................................................................................................................... 1

1.2. Hierarki Database ...................................................................................................................... 1

BAB 2 ..................................................................................................................................................... 4

APLIKASI XAMPP .............................................................................................................................. 4

2.1. Instalasi XAMPP ........................................................................................................................ 4

2.2. Tahapan Menggunakan XAMPP ............................................................................................. 4

BAB 3 ..................................................................................................................................................... 6

MYSQL DAN MARIADB .................................................................................................................... 6

3.1. Mysql ........................................................................................................................................... 6

3.2. MariaDB ..................................................................................................................................... 6

BAB 4 ..................................................................................................................................................... 8

AKSES COMMAND PROMPT DAN MARIADB ............................................................................ 8

4.1. Command Prompt ..................................................................................................................... 8

4.2. Mengakses MariaDB dan Command Prompt ......................................................................... 8

BAB 5 ..................................................................................................................................................... 9

USER BASIS DATA ............................................................................................................................. 9

5.1. User Basis Data .......................................................................................................................... 9

5.2. User Root .................................................................................................................................... 9

BAB 6 ................................................................................................................................................... 11

MEMBUAT DATABASE DAN TABEL SEDERHANA ................................................................ 11

6.1. Membuat Database .................................................................................................................. 11

6.2. Tabel Sederhana ....................................................................................................................... 11

BAB 7 ................................................................................................................................................... 12

HAK AKSES USER ............................................................................................................................ 12

7.1. Level Hak Akses ....................................................................................................................... 12

7.2. Perintah Grant ......................................................................................................................... 13

BAB 8 ................................................................................................................................................... 14

TIPE DATA ......................................................................................................................................... 14

8.1. Tipe Data String ....................................................................................................................... 14

iv

8.2. Tipe Data Numeric ................................................................................................................... 14

BAB 9 ................................................................................................................................................... 15

DATA DEFINITON LANGUAGE.................................................................................................... 15

9.1. Perintah-perintah DML .......................................................................................................... 15

9.2. Latihan Praktikum 1 ............................................................................................................... 16

9.3. Latihan Praktikum 2 ............................................................................................................... 20

9.4. LATIHAN SOAL ..................................................................................................................... 25

BAB 10 ................................................................................................................................................. 27

DATA MANIPULATION LANGUAGE .......................................................................................... 27

10.1. Pengertian DML ..................................................................................................................... 27

10.2. Latihan Praktikum ................................................................................................................ 27

BAB 11 ................................................................................................................................................. 33

TIPE-TIPE OPERATOR BASISDATA ........................................................................................... 33

11.1. Operator Aritmatika ............................................................................................................ 33

11.2. Operator Pembanding ........................................................................................................... 33

11.3. Operator Logika ..................................................................................................................... 34

11.4. Latihan Praktikum ................................................................................................................ 35

BAB 12 ................................................................................................................................................. 42

TIPE FUNGSI DML ........................................................................................................................... 42

12.1. Fungsi Agresi .......................................................................................................................... 42

12.2. Fungsi Distinct ........................................................................................................................ 43

12.3. Fungsi Alias ............................................................................................................................ 43

1

BAB 1

KONSEP DASAR BASIS DATA

1.1. Database

Database atau basis data adalah kumpulan data yang dikelola sedemikian rupa

berdasarkan ketentuan tertentu yang saling berhubungan sehingga mudah dalam

pengelolaannya. Melalui pengelolaan tersebut pengguna dapat memperoleh kemudahan dalam

mencari informasi, menyimpan informasi dan membuang informasi. Basis Data (Database)

dapat dibayangkan sebagai sebuah lemari arsip. Jika kita memiliki sebuah lemari arsip dan

berwenang untuk mengelolanya. Atau kumpulan informasi yang terorganisasi dan disajikan

untuk tujuan khusus. Prinsip utama basis data adalah pengaturan data atau arsip. Pengertian

lain dari database adalah sistem yang berfungsi sebagai mengumpulkan file, tabel, atau arsip

yang terhubung dan disimpan dalam berbagai media elektronik. Sedangkan tujuan utamanya

adalah kemudahan dan kecepatan dalam pengambilan data atau arsip.

Sedangkan sistem basis data merupakan perpaduan antara basis data dan sistem

manajemen basis data (DBMS). Database Management System (DBMS) adalah perangkat

lunak untuk menyimpan dan mengambil data pengguna sambil mempertimbangkan langkah-

langkah keamanan yang sesuai. DBMS menerima permintaan data dari aplikasi dan

menginstruksikan sistem operasi untuk menyediakan data spesifik. DBMS memungkinkan

pengguna untuk membuat database mereka sendiri sesuai kebutuhan mereka. Istilah "DBMS"

termasuk pengguna database dan program aplikasi lainnya serta menyediakan antarmuka

antara data dan aplikasi perangkat lunak.

1.2. Hierarki Database

Konsep basis data (database) dapat dipandang dari berbagai sudut, diantaranya dari sisi

sistem. Basis data merupakan kumpulan tabel yang saling berhubungan. Sedangkan dari sisi

manajemen, basis data merupakan kumpulan data yang memodelkan aktivitas-aktivitas yang

terdapat dalam perusahaan. Hirarki penyimpanan data terdiri dari tingkatan data seperti gambar

berikut:

2

Gambar 1.1. Hierarki Database

Penjelasan:

a. Karakter (Characters)

Merupakan bagian terkecil dalam database, dapat berupa karakter numerik (angka

0 s/d 9), huruf (A-Z, a-z) ataupun karakter-karakter khusus seperti *, &, %, #, dan

lain-lain.

b. Field (Attribute)

Merupakan bagian dari record yang menunjukkan suatu item data yang sejenis,

misalnya field nama, field nim, dan lain sebagainya. Setiap field harus mempunyai

nama dan tipe data tertentu. Isi dari field disebut Data Value. Dalam database, field

ini disebut juga kolom.

c. Record (Tupple)

Tuple/Record adalah kumpulan data value dari attribute yang berkaitan sehingga

dapat menjelaskan sebuah entity secara lengkap. Misalnya record entity mahasiswa

adalah kumpulan data value dari field. Dalam database, record disebut juga baris.

d. Tabel (Entity)

Entity merupakan sesuatu yang dapat diidentifikasi dari suatu sistem database, bisa

berupa objek, orang, tempat, kejadian atau konsep yang informasinya akan

disimpan dalam database.

e. Database

Kumpulan dari tabel-tabel yang saling berelasi, disusun secara logis sehingga

menghasilkan informasi yang bernilai guna dalam proses pengambilan keputusan.

3

Contoh:

Nama database: perpustakaan_ubsi

Nama tabel : buku

Gambar 1.2 Komponen basis data

4

BAB 2

APLIKASI XAMPP

2.1. Instalasi XAMPP

Xampp merupakan suatu tools yang bersifatopen source yang sering dipergunakan

untuk pengembangan aplikasi berbasis website yang didalamnya sudah menyediakan paket

seperti Apache, MySQL, MariaDB, PHP, phpMyAdmin, FileZilla, Tomcat, Xampp Control

Panel. XAMPP mampu menggantikan peran web hosting dengan cara menyimpan file website

kedalam hosting lokal (localhost) agar bisa dipanggil lewat lewat browser. Sejarah mencatat,

software XAMPP pertama kali dikembangkan oleh tim proyek bernama Apache Friends dan

sampai saat ini sudah masuk dalam rilis versi 7.3.9 yang bisa didapatkan secara gratis dengan

label GNU (General Public License).

Menurut para ahli XAMPP memiliki arti sebagai berikut:

• X = Cross Platform : Merupakan kode penanda untuk software cross platform atau yang

bisa berjalan di banyak sistem operasi, seperti Window, Mac dan Linux

• A = Apache : aplikasi web server yang bersifat gratis dan bisa dikembangkan oleh

banyak orang (open source).

• M = Mysql : aplikasi database server yang dikembangkan oleh orang yang sama.

MySQL berperan dalam mengolah, mengedit, dan menghapus daftar melalui database.

• P = Php : inisial untuk menunjukkan eksistensi bahasa pemrograman PHP. Bahasa

pemrograman ini biasanya digunakan untuk membuat website dinamis, contohnya

dalam website berbasis CMS WordPress.

• P = Perl : singkatan dari bahasa pemrograman Perl yang kerap digunakan untuk

memenuhi berbagai macam kebutuhan. Perl ini bisa berjalan di dalam banyak sistem

operasi sehingga sangat fleksibel dan banyak digunakan.

Xampp sendiri telah tersedia juga untuk platform Windows mauppun Linux. Tools

xampp ini dapat di download di situs https://www.apachefriends.org/index.html. Xampp yang

akan digunakan menggunakan xampp versi 5.6.3 dengan ekstensi PHP dan telah didukung

dengan mysqli dan server mariaDB.

2.2. Tahapan Menggunakan XAMPP

1. Silahkan download xampp di https://www.apachefriends.org/index.html , kemudian

setelah didownload lakukan penginstalan dan ikuti petunjuk yang diberikan.

5

2. Setelah instalasi selesai pindahkan xampp control panel pada Taskbar Laptop/PC

dengan cara masuk ke Explore, lalu arahkan ke lokasi penyimpanan saat Instalasi

(pada contoh, saat instalasi memilih Lokasi di C:/xampp). Kemudian cari file aplikasi

bernama xampp-control, lalu klik kanan pada file tersebut dan pilih Pin to Taskbar,

seperti gambar dibawah ini:

Gambar 2.1. Xampp Control

3. Lalu periksa Xampp Control Panel dengan menjalankannya pastikan tab

MySQL dan Apache dalam kondisi Running.

Gambar 2.2. Tampilan Xampp

4. Untuk memastikan kembali, silahkan buka web browser (mozilla, google chrome dll)

lalu ketikan dengan alamat http://localhost/xampp/ , jika berhasil tampil halaman

pembuka xampp di awal seperti gambar dibawah ini.

Gambar 2.3. Localhost/xampp

6

BAB 3

MYSQL DAN MARIADB

3.1. Mysql

MySQL adalah sebuah program database server yang mampu menerima dan

mengirimkan datanya dengan sangat cepat, multi user serta meggunakan perintah

standar SQL (Structure Query Language). MySQL dan SQL adalah dua software yang berbeda.

MySQL merupakan salah satu nama brand terpopuler dari software RDBMS yang menerapkan client-

server model. Keduanya menggunakan bahasa spesifik domain Structured Query Language (SQL).

Software RDBMS selalu menggunakan SQL sebagai bahasa utama untuk berinteraksi dengan database.

MySQL sendiri ditulis dalam C dan C++.

Tugas SQL adalah untuk memberitahukan server tentang apa yang harus dilakukannya terhadap

data. Penggambaran umumnya seperti password atau kode WordPress. Ketika kita memasukkan

password atau kode tersebut ke sistem untuk mendapatkan akses agar bisa login ke dashboard. Dalam

hal ini, SQL statement menginstruksikan server untuk menjalankan operasi sebagai berikut:

• Data query: meminta informasi yang spesifik dari database yang sudah ada.

• Manipulasi data: menambahkan, menghapus, mengubah, menyortir, melakukan operasi

lainnya untuk memodifikasi data, value, atau visual.

• Identitas data (data identity): menentukan tipe data, misalnya mengubah data numerik

menjadi data integer. Selain itu, juga menentukan schema atau hubungan dari masing-

masing tabel yang ada di database.

• Data access control: menyediakan metode keamanan untuk melindungi data, termasuk

dalam menentukan siapa yang boleh melihat atau menggunakan informasi yang

tersimpan di database.

3.2. MariaDB

Seiring akuisisi dan dimilikinya MySQL oleh Oracle, maka para pengembang awal

MySQL membangun sebuah sistem manajemen database baru yang dinamakan MariaDB.

MariaDB memiliki SQL dalam DNA-nya dan memungkinkan pemrosesan data gaya ACID

dengan atomisitas terjamin, daya tahan, isolasi, dan konsistensi untuk transaksi. Fitur Utama

MariaDB adalah include support API JSON, replikasi data paralel dan berbagai mesin

penyimpanan. Tetapi ada beberapa area yang tidak kompatibel antar versi. Misalnya, dari versi

10.1 ke atas, MariaDB menyimpan data JSON menggunakan format berbeda ke MySQL 5.7.

Untuk menyiasatinya, bagi yang ingin menyalin kolom objek JSON dari MySQL ke MariaDB

dapat mengkonversikannya ke format yang menggunakan atau menjalankan pekerjaan

7

replikasi berbasis pernyataan dengan SQL. MariaDB memiliki fungsi basis data kolom yang

dirancang untuk lebih mendukung analitik waktu nyata dalam skala besar. Sehingga bisa

dikatakan MariaDB merupakan open source pengembangan dari MySQL yang full free.

Xampp sendiri telah mengganti database MySQL dengan MariaDB sejak versi 5.5.3. Sehingga

modul praktikum ini menggunakan basis data dengan Jenis Server MariaDB.

8

BAB 4

AKSES COMMAND PROMPT DAN MARIADB

4.1. Command Prompt

Command Prompt adalah aplikasi command line interpreter yang tersedia di sebagian

besar sistem operasi Windows. Ini digunakan untuk menjalankan perintah yang dimasukkan.

Sebagian besar dari perintah itu mengotomatiskan tugas-tugas melalui skrip dan batch files,

melakukan fungsi administrasi tingkat lanjut, dan memecahkan masalah atau memecahkan

beberapa jenis masalah Windows. Untuk membuka command prompt pada Laptop/PC bisa

menggunakan berbagai cara, berikut salah satu caranya:

a. Pilih menu Start - All Programs - Accessories Kemudian Pilih Command Prompt.

b. Klik Kanan pada command prompt atau cmd, lalu pilih Run as administrator.

4.2. Mengakses MariaDB dan Command Prompt

1. Ketikan perintah cd c:\ (lalu kemudian tekan Enter)

2. Lalu ketikan perintah “xampp/mysql/bin/mysql.exe” –u root -p (lalu kemudian tekan

Enter)

Gambar 4.1. Akses MariaDB

9

BAB 5

USER BASIS DATA

5.1. User Basis Data

User Basis Data merupakan Pengguna database atau basis data dibedakan menjadi

beberapa golongan, tergantung tingkat kepentingan seorang pengguna.

Terdapat 4 Golongan Pemakai Basis Data (User), diantaranya:

• Programmer aplikasi adalah pemakai yang berinteraksi dengan basis data melalui Data

Manipulation Language (DML), yang disertakan (embedded) dalam program yang ditulis

pada bahasa pemrograman induk (seperti C, pascal, cobol, dan lainnya)

• Pemakai / User Mahir (Casual User) adalah pemakai yang berinteraksi dengan sistem

tanpa menulis modul program. Mereka menyatakan query dengan bahasa query yang telah

disediakan oleh suatu DBMS.

• Pemakai / User Umum (End User / Naive User) adalah pemakai yang berinteraksi dengan

sistem basis data melalui pemanggilan satu program aplikasi permanen (executable

program) yang telah ditulis / disediakan sebelumnya.

• Pemakai Khusus (Specialized / Sophisticated User) adalah pemakai yang menulis aplikasi

basis data non konvensional, tetapi untuk keperluan-keperluan khusus seperti aplikasi AI,

Sistem Pakar, Pengolahan Citra, dan lainya, yang bisa mengakses basis data dengan atau

tanpa DBMS yang bersangkutan.

5.2. User Root

Didalam Basis Data dapat terdiri dari beberapa user (seperti penjelasan diatas)

tergantung kebutuhan dari basis data. Sedangkan user tertinggi disebut dengan istilah root, itu

sebabnya sebagai langkah awal menjalankan MariaDB dengan command prompt

menggunakan user root. Ketika sudah masuk kedalam MariaDB dengan user root, ketikkan

beberapa perintah dibawah ini sesuai gambar yang ada:

10

Gambar 5.1. show databases;

Gambar 5.2. use mysql;

Jika perintah diatas sudah dibuat dan hasilnya sesuai (tidak ada kesalahan), berikutnya kita

akan membuat user.

Gambar 5.3. create user

- Menghapus user

Gambar 5.4. drop user

11

BAB 6

MEMBUAT DATABASE DAN TABEL SEDERHANA

6.1. Membuat Database

Untuk mengawali praktek perancangan database, berikut latihan untuk membuat

database dengan tabel sederhana.

- Masuk kedalam MariaDB dengan user root

- Setelah masuk MariaDB, ketikan perintah berikut:

Gambar 6.1. create database

- Lihat hasilnya dengan perintah show databases;

6.2. Tabel Sederhana

- Lalu, untuk membuat tabel terlebih dahulu kita aktifkan database db_latihan1 dengan

perintah use. (Tabel adalah bagian dari suatu Database, oleh sebab itu pembuatannya

harus berada didalam suatu database yang diaktifkan terlebih dahulu).

Gambar 6.2 use db_latihan1;

- Untuk melihat daftar tabel pada suatu database, gunakan perintah show tables;

- Sedangkan perintah untuk melihat struktur tabel, gunakan perintah desc mhs; atau

describe mhs;

Gambar 6.3. desc mhs;

12

BAB 7

HAK AKSES USER

7.1. Level Hak Akses

MySQL menyediakan berbagai tingkatan level hak akses. Setiap user dapat dibatasi

untuk dapat mengakses baik itu sebuah database tertentu saja, tabel tertentu, atau bahkan hanya

kolom tertentu. Jika didasarkan pada pengelompokkan ini, kita dapat membagi hak akses

MySQL menjadi 4 level tingkatan, yaitu:

1. Hak Akses Global (*.*)

Hak akses ini berarti user dapat memiliki hak akses untuk seluruh database yang

terdapat di dalam MySQL. Contoh penulisan query GRANT untuk level ini adalah:

GRANT SELECT ON *.* TO 'user'@'localhost';

Perhatikan cara penulisan nama_database.nama_tabel, dimana kita menulisnya

dengan *.*, sehingga user tersebut dapat mengakses seluruh tabel pada seluruh

database.

2. Hak Akses Level Database (nama_database.*)

Hak akses ini berarti user memiliki hak akses penuh untuk sebuah database. Contoh

penulisan query GRANT untuk level database ini adalah:

GRANT SELECT ON universitas.* TO 'user'@'localhost';

Untuk penulisan nama_database.nama_tabel, kita membatasi nama database, namun

memberikan hak akses untuk seluruh tabel, penulisannya adalah nama_database.*

3. Hak Akses Level Tabel (nama_database.nama_tabel)

Hak akses ini berarti user memiliki hak akses untuk sebuah tabel yang berada pada

sebuah database. Contoh penulisan query GRANT untuk level ini adalah:

GRANT SELECT ON universitas.mahasiswa_ubsi TO 'user'@'localhost';

Hak akses yang dimiliki user hanya terbatas pada level sebuah tabel saja.

13

4. Hak Akses Level Kolom (nama_kolom)

Hak akses ini adalah hak akses paling kecil yang dapat diberikan kepada sebuah user.

Dengan hak akses level kolom, user hanya memiliki hak akses untuk beberapa kolom

pada sebuah tabel. Contoh penulisan query GRANT untuk level kolom ini adalah:

GRANT SELECT (nama,umur) ON universitas.mahasiswa_ilkom TO 'user'@'localhost';

Level paling akhir ini kita membatasi hak akses user hanya untuk kolom tertentu saja.

Penulisan kolom yang diperbolehkan diletakkan di dalam tanda kurung.

7.2. Perintah Grant

Untuk contoh latihan berikut ini, melanjutkan dari latihan sebelumnya kita akan

memberi hak akses pada user menggunakan perintah grant;

Gambar 7.1. perintah grant

14

BAB 8

TIPE DATA

8.1. Tipe Data String

Tipe data string yang berisi nilai berupa karakter atau huruf dan semua karakter (atau

teks) yang penulisannya selalu diapit oleh tanda kutip baik kutip tunggal (‘) maupun kutip

ganda (“). Hal ini tidak hanya berlaku pada huruf alfabet saja tetapi angka yang ditulis dengan

tanda kutip pun akan menjadi karakter atau string. Beberapa tipe data string yang mendukung

database MariaDB, yaitu, CHAR, VARCHAR, BINARY, VARBINARY, TEXT, BLOB

8.2. Tipe Data Numeric

Tipe data ini digunakan untuk menampung angka-angka yang dapat dilakukan untuk

manipulasi perhitungan. Numeric Values yaitu angka atau bilangan seperti 10; 123;

100.50; -10; 1.2E+17; 2.7e-11; dan sebagainya. Tipe data ini dibagi menjadi dua yaitu

Bilangan Bulat (Integer) dan Bilangan Pecahan (Floating-point). Bilangan bulat adalah

bilangan tanpa tanda desimal sedangkan bilangan pecahan adalah bilangan dengan

tanda desimal. Kedua jenis bilangan ini dapat bernilai positif (+) dan juga negatif (-).

Tipe data tersebut terdiri dari Integer, Decimal, Float dan Double.

15

BAB 9

DATA DEFINITON LANGUAGE

9.1. Perintah-perintah DML

Data Definition Language merupakan kumpulan perintah atau query SQL yang

digunakan untuk membuat, merubah, serta dapat pula menghapus dari suatu struktur dan

definisi tipe data dari objek-objek, seperti tabel yang ada pada suatu database. Dengan perintah-

perintah sebagai berikut:

a. Create

• Create Database

• Create Function

• Create Index

• Create Procedure

• Create Trigger

• Create View

• Create Table

b. Rename

• Rename Table

c. Alter

• Alter Database

• Alter Function

• Alter Procedure

• Alter Table

• Alter View

d. Drop

• Drop Database

• Drop Function

• Drop Index

• Drop Procedure

• Drop Table

• Drop Trigger

• Drop View

16

Berikut ini kita akan mencoba latihan praktikum menggunakan perintah-perintah DDL (Data

Definition Language), yang dimana untuk kemudahan pembelajaran user yang dipakai adalah

root.

9.2. Latihan Praktikum 1

1. Masuk kedalam MariaDB melalui command prompt.

2. Buat dua buah database masing-masing dengan nama “komik_coba1” dan

“komik_cobalagi”.

3. Tampilkan seluruh daftar database yang ada.

Note: perlu diperhatikan bahwasannya perintah menampilkan seluruh daftar database yang

dimana pada kata database ditambahkan akhiran huruf ‘s’ menjadi “databases”

4. Hapus database “komik_cobalagi”.

17

5. Aktifkan database komik_coba1.

6. Tampilkan daftar tabel pada database komik_coba1.

7. Buat 3 buah tabel, dengan ketentuan sebagai berikut:

Tabel “Anggota”:

(Primary Key adalah kunci utama dari suatu tabel, bersifat unik dan tidak boleh ada isi record

yang sama/ganda). Saat membuat suatu tabel, field-field yang ada dapat diberikan nilai ‘not

null’ untuk memberikan validasi saat pengisian record tidak boleh kosong datanya.

Penggunaan atribut not null disesuaikan dengan kebutuhan, namun secara default mysql akan

memberikan nilai ‘null’.

18

Tabel “Komik”:

Tabel “Pinjam”:

*Jawaban no.7 (tabel anggota, tabel komik, tabel pinjam)

8. Tampilkan daftar tabel yang ada pada database.

9. Buka struktur tabel dari masing-masing tabel yang telah dibuat.

19

10. Hapus primary key pada tabel anggota.

11. Buat field baru pada tabel anggota, yaitu, “tgl_daftar” dengan type = “date”.

12. Ubah nama tabel “anggota” menjadi “anggota_warnet”.

13. Buat field baru pada tabel komik, yaitu, “status” dengan type = “varchar” dan size =

“10”.

14. Lihat Struktur Tabel Pinjam.

*Jawaban no.10 -14

20

15. Beri Primary Key pada field “no_pinjam” pada tabel pinjam.

16. Lihat kembali struktur tabel pinjam.

17. Ubah nama tabel “pinjam” menjadi “transaksi”.

18. Buat primary key pada field “id_anggota” pada tabel anggota_warnet.

19. Hapus field ”jenis_komik” pada tabel komik.

20. Ganti field “jumlah” pada tabel transaksi menjadi “jml_komik” type=”Int” Size=”4”.

*Jawaban no.15 – 20

9.3. Latihan Praktikum 2

1. Masuk kedalam MariaDB melalui command prompt.

2. Buat database dengan nama “db_les_private”, kemudian tampilkan seluruh daftar

database yang ada.

21

3. Aktifkan database db_les_private.

4. Buat sebuah tabel dengan nama “siswa”, ketentuan tabel sebagai berikut:

5. Lihat daftar tabel pada database db_les_private.

6. Lihat struktur tabel pada tabel siswa.

7. Ubah field “nama” pada tabel siswa menjadi “nama_siswa” type=”varchar”

Size=”30”.

22

8. Ubah field “tgl” pada tabel siswa menjadi “tgl_lahir” (Type dan Size tidak berubah).

9. Ubah field “kelas” pada tabel siswa menjadi “kelas_siswa” type=”varchar” Size=”20”

10. Hapus field “no_telp” pada tabel siswa.

11. Ubah nama tabel “siswa” menjadi “siswa_baru”.

12. Lihat kembali struktur tabel siswa_baru.

23

13. Buat kembali 2 buah tabel dengan ketentuan sebagai berikut:

Tabel “tutor”:

Field Name Type Size Keterangan

Id_tutor Char 8

Nama_tutor Varchar 30

Jenis Varchar 20

Jml_kelas Smallint 4

Tabel “ruang”:

14. Lihat struktur tabel tutor dan ruang.

24

15. Buat primary key untuk “id_tutor” pada tabel tutor.

16. Ubah “tipe data” dari field “jml_kelas” pada tabel tutor menjadi int(4).

17. Tampilkan struktur tabel ruang, kemudian Ubah “tipe data” dari field “id_ruang”

pada tabel ruang menjadi “Int”.

18. Hapus tabel “ruang” dari database db_les_private.

19. Ubah nama tabel “tutor” menjadi “tutor_les”.

20. Lihat kembali daftar tabel yang ada pada database db_les_private.

25

9.4. LATIHAN SOAL

1. Buat dua buah database masing-masing dengan nama “db_jualan” dan “db_jualan”.

2. Tampilkan seluruh daftar database yang ada.

3. Aktifkan database NIMMasingmasing_bab3a.

4. Buat 2 buah tabel, dengan ketentuan sebagai berikut:

Tabel “pedagang”:

Tabel “barang”;

5. Buka struktur tabel dari masing-masing tabel yang telah dibuat.

6. Tampilkan daftar tabel yang ada pada database.

7. Hapus primary key pada tabel barang.

26

8. Buat field baru pada tabel barang, yaitu, “harga” dengan type = “int” size =“10“.

9. Ubah nama tabel “pedagang” menjadi “pedagang03”.

10. Beri primary key pada tabel barang untuk field id_barang.

11. Hapus field No_telp pada tabel pedagang03.

12. Lihat struktur tabel pada tabel barang.

13. Hapus database “NIMMasingmasing_bab3b”.

14. Buat field baru pada tabel pedagang03, yaitu, “no_hp” dengan type = “varchar”

dan size = “20”.

15. Ganti field “Warna” pada tabel barang menjadi “Wrn” type=”Varchar” Size=”20”

27

BAB 10

DATA MANIPULATION LANGUAGE

10.1. Pengertian DML

DML merupakan kumpulan perintah SQL yang digunakan untuk proses pengolahan isi

data di dalam table seperti memasukkan, merubah dan menghapus isi data - dan tidak terkait

dengan perubahan struktur dan definisi tipe data dari objek database. Berbeda dengan DDL

yang berhubungan dengan struktur tabel pada bahasan praktikum sebelumnya. Berikut contoh

perintah DML memasukan data kedalam tabel mahasiswa:

INSERT INTO mahasiswa (NIM, Nama_mhs, Kelas, Jurusan, Email, No_telepon)

VALUES (‘12202020’, ‘Joni’, ’12.2J.30’, ‘Sistem Informasi’, ‘[email protected],

‘0898989800’);

10.2. Latihan Praktikum

1. Masuk kedalam MariaDB melalui command prompt.

2. Buat sebuah database dengan nama “db_latihan_dml”, kemudian tampilkan seluruh

daftar database yang ada.

3. Aktifkan database db_latihan_dml.

4. Buat tabel bernama “buku”

28

Tabel “Buku”:

5. Lihat struktur tabel buku

6. Isikan data untuk tabel buku, dengan data sebagai berikut:

29

7. Tampilkan isi seluruh record pada tabel buku.(gunakan tanda * bila seluruh field

ditampilkan)

8. Tampilkan isi record tabel buku, hanya buku dengan penerbit = “Abadi Jaya”.

9. Tampilkan isi record dengan pengelompokan data berdasarkan penerbit. (data yang

sama pada penerbit tidak akan dipanggil kembali, disebut juga Ascending)

10. Tampilkan isi record dengan pengurutan data berdasarkan penerbit. (secara default

pengurutan secara ascending dari A ke Z).

30

11. Tampilkan isi record hanya field “judul_buku”, “penulis”, “thn_terbit”.

12. Tampilkan isi record dengan Penulis bernama depan huruf= “A”. (pencarian data

menggunakan like.

13. Tampilkan isi record dengan Tahun terbit dibawah tahun 2005.

14. Tampilkan isi record dengan Judul buku mengandung kata “SQL”.

31

15. Tampilkan isi record, dengan penulis = “Dewi Lestari”.

16. Tampilkan isi record hanya field “judul_buku”, “penulis”, kemudian urutkan data

berdasarkan penulis.

17. Tampilkan isi record hanya field “judul_buku”, “penulis”, kemudian urutkan data

berdasarkan penulis secara descending.

18. Tampilkan isi record hanya field “judul_buku”, “penulis”, “thn_terbit”, dengan

tahun terbit dibawah tahun 2005.

32

19. Tampilkan isi record hanya field “judul_buku”, “penulis”, “thn_terbit”, “penerbit”,

dengan tahun terbit dibawah tahun 2005, lalu urutkan berdasarkan “thn_terbit”

secara descending.

20. Tampilkan isi record hanya field “judul_buku”, “penulis”, “penerbit”, dengan

penulis = “Andrea Hirata”, lalu urutkan secara descending berdasarkan

“judul_buku”.

33

BAB 11

TIPE-TIPE OPERATOR BASISDATA

Didalam basisdata kita mesti mengenal beberapa tipe-tipe operator yang biasa

digunakan pada perancangan database sesuai dengan kebutuhan dari rancangan database itu

sendiri.

11.1. Operator Aritmatika

Operator Fungsi

+ Melakukan Penjumalahan pada operasi matematika

- Melakukan Pengurangan pada operasi matematika

* Melakukan Perkalian pada operasi matematika

/ Melakukan Pembagian pada operasi matematika

% Melakukan Proses modulus (mencari sisa bagi) pada operasi matematika

11.2. Operator Pembanding

Operator Fungsi Contoh

= Sama dengan

Nama = ”anwar”

Harga= 45610

> Lebih dari Tinggi Badan > 150

< Kurang dari Tinggi Badan < 150

>= Lebih dari atau sama dengan Tinggi Badan >= 150

<= Kurang dari atau sama dengan Tinggi Badan <= 150

!= atau < > Tidak sama dengan

Nama!=”anwar”

Harga < > 100

3!=2

IS NOT NULL Apakah nilai tidak NULL Nama IS NOT NULL

34

IS NULL Apakah nilai NULL Nama IS NULL

BETWEEN …

AND

Apakah suatu nilai berada diantara

nilai

Harga BETWEEN 150 AND 500

IN Apakah suatu nilai berada diantara

pilihan nilai yang ada

Nama IN (“Anwar”, “Amir”)

NOT IN Apakah suatu nilai tidak berada

diantara pilihan nilai yang ada

Nama NOT IN (“Anwar”, “Amir”)

LIKE Apakah suatu nilai memiliki kriteria

nilai yang ada

Nama LIKE “An%”

NOT LIKE Apakah suatu nilai tidak memiliki

kriteria nilai yang ada

Nama NOT LIKE “An%”

REGEXP Nilai menjadi benar bila nilai kedua

tersebut sama

a REGEXP b

NOT REGEXP Nilai menjadi benar bila nilai kedua

tersebut tidak sama

a NOT REGEXP b

<=> Nilai menjadi benar bila nilai kedua

tersebut sama

a <=> b

11.3. Operator Logika

Operator Fungsi Contoh

NOT atau ! Sebagai Negasi bukan dari

suatu nilai

NOT Pria atau !Pria

OR atau | | Atau, akan bernilai benar

bilah salah satu atau kedua

ekspresi adalah benar

Ikan = “Arwana” OR Ikan = “Kaloi”

Atau

Ikan = “Arwana” | | Ikan = “Kaloi”

AND atau && Dan, akan bernilai benar

hanya bila ekspresi adalah

benar

Ikan = “Arwana” AND Bunga =

“Mawar”

Atau

Ikan = “Arwana” && Bunga =

“Mawar”

35

Xor Data dianggap benar jika

hanya data pertama yang

bernilai benar

1 XOR 1 = 0

1 XOR 0 = 1

0 XOR 1 = 1

0 XOR 0 = 0

11.4. Latihan Praktikum

1. Masuk kedalam MariaDB melalui command prompt.

2. Aktifkan kembali database yang telah dibuat dilatihan sebelumnya dengan nama

“db_latihan_dml”.

3. Tampilkan daftar tabel yang ada.

4. Buat tabel bernama “member”, dengan ketentuan sebagai berikut:

Tabel “member”:

36

5. Lihat struktur tabel member

6. Isikan data untuk tabel member, dengan data sebagai berikut:

7. Tampilkan isi seluruh record pada tabel member.

37

8. Tampilkan isi record dengan Nama member bernama = “Erni Susanti”.

9. Tampilkan isi record dengan usia = “dibawah 21 Tahun”.

10. Tampilkan isi record, kecuali member bernama = “Rere Kurnia”.

11. Tampilkan isi record hanya field “nama_member”, “semester”, kemudian urutkan

data berdasarkan semester.

12. Tampilkan isi record hanya field “nama_member”, “semester”, “usia”, dimana

usia berada “diantara 19-20 tahun”.

38

13. Tampilkan isi record dengan usia = “diatas 18 Tahun” dan semester = “diatas

semester 2”.

14. Tampilkan isi record dengan usia = “diatas 18 Tahun” atau semester = “diatas

semester 2”.

15. Tampilkan isi record hanya field “nama_member”, “alamat”, dimana member

bernama depan huruf = “R”, kemudian urutkan data berdasarkan nama_member.

16. Tampilkan isi record hanya field “nama_member”, “alamat”, “usia”, dimana usia

berada “diatas 18 tahun”, kemudian urutkan data secara descending berdasarkan

nama_member.

39

17. Tampilkan 4 isi record teratas dari tabel member. (guanakan perintah LIMIT)

18. Tampilkan 5 isi record teratas dari tabel member, kemudian urutkan secara

descending berdasarkan “semester”.

19. Tampilkan isi record, hanya dari record ke-2 hingga record ke-4. (perhitungan

record dimulai dari record 0, maka dirumuskan record ke-2 adalah LIMIT 1,

sebanyak 3 record kebawah).

20. Tampilkan isi record, hanya dari record ke-1 hingga record ke-4, kemudian urutkan

berdasarkan id_member.

40

LATIHAN OPERATOR

1. Buat sebuah database dengan nama “db_toko”, kemudian tampilkan seluruh daftar

database yang ada.

2. Aktifkan database db_toko.

3. Buat tabel bernama “brg”, dengan ketentuan sebagai berikut:

4. Lihat struktur tabel

5. Isikan data untuk tabel brg, dengan data sebagai berikut:

6. Tampilkan isi seluruh record pada tabel brg

7. Tampilkan isi record hanya field “kode_brg”, “nama_brg”, “stok”, kemudian

urutkan data secara ascending berdasarkan nama_brg.

8. Tampilkan isi record tabel brg, hanya Nama Barang = “Terminal”.

9. Tampilkan isi record dengan Nama Barang depan huruf berawalan= “C”.

10. Tampilkan isi record hanya field kode_brg, nama_brg, harga_brg, stok dimana stok

berada dibawah dari 200.

11. Tampilkan isi record barang dimana tahun pembuatan berada diantara tahun 2002-

2006.

12. Tampilkan 3 isi record teratas dari tabel barang.

41

13. Tampilkan isi record barang dimana stok berada dibawah dari 200 dan tahun

pembuatan tahun 2000.

14. Tampilkan isi record, hanya dari record ke-1 hingga record ke-3, kemudian urutkan

berdasarkan kode_brg

15. Tampilkan isi record dengan Kode Barang kecuali BR05

42

BAB 12

TIPE FUNGSI DML

12.1. Fungsi Agresi

Fungsi Agregasi dalam SQL merupakan suatu proses untuk mendapatkan nilai dari

kumpulan data yang sudah dikelompokkan. Pengelompokan data itu didasarkan pada kolom

atau kombinasi kolom yang telah dipilih. Berikut macam-macam agregasi dalam SQL:

Operator

AVG

COUNT

MAX

MIN

SUM

GROUP BY

Penjelasan:

- AVG (Average) adalah suatu fungsi yang dapat digunakan untuk menghitung nilai rata-

rata dari sebuah kolom.

Contoh : select AVG(nama_field) from nama_table;

- COUNT, adalah fungsi yang digunakan dalam SQL untuk menghitung jumlah atau

banyaknya baris data dari sebuah table.

Contoh : select COUNT(*) from nama_table;

- MAX adalah suatu fungsi yang digunakan dalam bahasa SQL untuk mencari sebuah nilai

terbesar dari kumpulan data angka pada suatu kolom atau field.

Contoh : select MAX(nama_field) from nama_table;

- MIN adalah suatu fungsi yang digunakan dalam SQL untuk mencari nilai terkecil dari

sebuah kumpulan data angka dalam suatu field.

Contoh : select MIN(nama_field) from nama_table;

- SUM adalah suatu fungsi yang digunakan dalam bahasa SQL untuk menghitung jumlah

atau juga hasil penjumlahan data angka dari suatu field maupun kolom.

43

Contoh : select SUM(nama_field) from nama _table;

- GROUP BY, sebuah perintah yang digunakan untuk mengelompokan beberapa data

dalam perintah SELECT.

Contoh : SELECT * FROM (nama_tabel) GROUP BY atribut;

12.2. Fungsi Distinct

Fungsi Distinct adalah sebuah perintah yang digunakan untuk operator di database

MySQL. Bahkan hampir di semua database menggunakan ini untuk mencegah adanya

duplikasi data atau record sehingga record dibuat secara berurutan tanpa ada perulangan yang

sama

Contoh : SELECT DISTINCT nama_field FROM nama_tabel

12.3. Fungsi Alias

Fungsi yang digunakan untuk mengganti secara tampilan nama tabel atau nama field.

nama_tabel_asli AS nama_tabel_alias

nama_field_asli AS nama_ field_alias

4. Fungsi Concat (Concatenates):

Fungsi yang digunakan untuk menyambung kata.

Contoh : select CONCAT (nama_field," penghubung_string ", field_baru) from

nama_table;

Berikut latihan-latihan praktikum data manipulation language lanjutan:

Latihan praktikum 1:

1. Masuk kedalam MariaDB melalui command prompt.

2. Buat sebuah database dengan nama “db_dml_operator”, kemudian tampilkan seluruh

daftar database yang ada.

44

3. Aktifkan database db_dml_lanjutan

4. Buat tabel bernama “pengajar”, dengan ketentuan sebagai berikut:

Tabel “pengajar”:

5. Lihat struktur tabel pengajar.

45

6. Isikan data untuk tabel pengajar, dengan data sebagai berikut:

7. Tampilkan isi seluruh record pada tabel pengajar, kemudian urutkan secara

descending berdasarkan field gaji.

8. Tampilkan rata-rata gaji pada tabel pengajar.

9. Tampilkan gaji terendah pada tabel pengajar.

46

10. Tampilkan jumlah total keseluruhan gaji pada tabel pengajar.

11. Tampilkan jumlah gaji dengan pengajar yang memiliki sks “lebih dari 3sks”.

12. Tampilkan isi record hanya field “kota_asal” tanpa perulangan isi record yang

sama, kemudian urutkan secara ascending berdasarkan kota_asal.

13. Buat alias dengan nama “rata_gaji” untuk mencari nilai rata-rata gaji pengajar.

14. Buat alias untuk tabel dengan nama “tp”, kemudian tampilkan record hanya field

“nama”, “sks”, “gaji”.

47

15. Buat alias untuk field “nama” dengan nama “nama_pengajar”, kemudian tampilkan

isi record hanya berdasarkan alias “nama_pengajar”.

16. Buat alias untuk field “sks” dengan nama “jumlah_sks”, kemudian tampilkan isi

record hanya field “nama”, “gaji” dan alias “jumlah_sks”.

17. Buat alias dengan nama “hasil”, dan merupakan hasil perkalian antara field sks

dengan field gaji, kemudian tampilkan isi record.

48

18. Buat alias dengan nama “bonus” dan merupakan hasil perkalian antara field sks

dengan “100000”, kemudian tampilkan isi record hanya field “nama”, “sks”,

“bonus”.

19. Buat alias dengan nama “gaji_terbesar” untuk mencari nilai gaji terbesar pengajar.

20. Buat alias dengan nama “tunjangan” dan merupakan hasil perkalian antara field sks

dengan “250000”, kemudian tampilkan isi record dan urutkan secara descending

berdasarkan tunjangan.

Latihan Praktikum 2:

1. Masuk kedalam MariaDB melalui command prompt.

2. Aktifkan kembali database yang telah dibuat dilatihan sebelumnya dengan nama

“db_dml_lanjutan”.

3. Tampilkan daftar tabel yang ada pada database.

49

4. Buat tabel bernama “mata_kuliah”, dengan ketentuan sebagai berikut:

Tabel “matakuliah”:

5. Lihat struktur tabel mata_kuliah.

6. Isikan data untuk tabel mata_kuliah, dengan data sebagai berikut:

50

7. Tampilkan seluruh isi record pada tabel mata_kuliah.

8. Tampilkan jumlah data dari isi record tabel mata_kuliah. (menghitung jumlah data isi

record gunakan fungsi count).

51

9. Tampilkan isi record dengan menggabungkan isi data dari field “nama_mtkul”

dengan field “sks”, dengan penghubung string bernama “jumlah sks yaitu:”.

(menggabungkan karakter yang mengandung spasi gunakan fungsi concat).

10. Buat alias dengan nama “daftar_mata_kuliah”, kemudian tampilkan isi record

dengan menggabungkan isi data dari field “nama_mtkul” dengan field “sks”,

dengan penghubung string bernama “jumlah sks yaitu:”

11. Buat alias dengan nama “Mata Kuliah” (menggunakan spasi) untuk field

nama_mtkul, kemudian tampilkan isi record dan urutkan berdasarkan alias “Mata

52

Kuliah”. (untuk membuat alias dengan menggunakan spasi gunakan tombol dengan

simbol ` , biasa ada disebelah angka 1 pada keyboard).

12. Buat alias dengan nama “Jumlah SKS” (menggunakan spasi) untuk field sks,

kemudian tampilkan hanya 4 record teratas.

13. Ubah isi record untuk nama matakuliah = “Mobile Programming I”, menjadi “Java

Programming I”.

53

14. Ubah isi record untuk nama matakuliah=“Bahasa Inggris”, jumlah sks menjadi “3”.

15. Tampilkan isi record hanya field “nama_mtkul”, “sks”, dimana yang ditampilkan

hanya jumlah sks 3.

16. Tambahkan isi record baru, yaitu kode_mtkul=”129”, nama_mtkul=”Java II”,

sks=”4”.

54

17. Tampilkan seluruh isi record tabel matakuliah.

18. Ubah isi record untuk nama matakuliah = “Java II”, menjadi “Java Programming

II”.

19. Hapus isi record dengan nama matakuliah = “Multimedia”.

55

20. Tampilkan kembali seluruh isi record tabel matakuliah, dengan buat alias “Mata

Kuliah” untuk field nama_mtkul dan “Jumlah SKS” untuk field sks.

LATIHAN SOAL

1. Buat sebuah database dengan nama “NIMMasingmasing_bab5”, kemudian

tampilkan seluruh daftar database yang ada.

2. Aktifkan database NIMMasingmasing_bab5.

3. Buat tabel bernama “buku”, dengan ketentuan sebagai berikut:

4. Lihat struktur tabel buku.

5. Isikan data untuk tabel buku, dengan data sebagai berikut:

56

6. Tampilkan isi seluruh record pada tabel buku, kemudian urutkan secara descending

berdasarkan field harga.

7. Tampilkan jumlah total keseluruhan harga pada tabel buku.

8. Tampilkan data buku dengan harga paling murah.

9. Buat alias dengan nama “rata_harga” untuk mencari nilai rata-rata dari harga buku.

10. Buat alias untuk tabel dengan nama “bk”, kemudian tampilkan record hanya field

“judul”, “penerbit”, “harga”.

11. Tampilkan jumlah data dari tabel buku.

12. Ubah isi record untuk buku “Diagram UML”, menjadi “UML Dasar”.

13. Tambahkan isi record baru, yaitu kode_buku=”BK06”, judul=”Algoritma Lanjut”,

pengarang=”Raden Kraton”, penerbit=“Graha Pustaka“, harga=“40.000“.

14. Hapus isi record dengan kode_buku=BK05, lalu tampilkan isi record dari tabel buku.

57

DAFTAR PUSTAKA

Cable, S. (2015). Succeeding in Business with Microsoft Access 2013. Stamford: Cengange

Learning.

Delisle, M. (2006). Creating Your MySQL Database Practical Design Tips and Techniques.

Birmingham: Packt Publishing Ltd. Komputer, W., & S., S. (2010). Panduan Belajar

MySQL Database Server. Jakarta: MediaKita.

Marlinda, L. (2004). Sistem Basis Data. Yogyakarta: Andi Publisher.

Nugroho, B. (2008). Panduan Lengkap Menguasai Perintah SQL. Jakarta: MediaKita.

Sianipar, R. (2015). Pemrograman Database Menggunakan MySQL. Yogyakarta: Andi

Publisher.

Talib, H. (2011). Panduan Lengkap Microsoft Access 2010. Jakarta: PT Elex Media

Komputindo.

Vaswani, V. (2010). MySQL Database Usage & Administration. New York: Mc Graw

Hill.