Otodidak
MySQL untuk Pemula
Otodidak
MySQL untuk Pemula
Jubilee Enterprise
PENERBIT PT ELEX MEDIA KOMPUTINDO
Otodidak MySQL untuk Pemula
Jubilee Enterprise
2017, PT Elex Media Komputindo, Jakarta
Hak cipta dilindungi undang-undang
Diterbitkan pertama kali oleh
Penerbit PT Elex Media Komputindo
Kelompok Gramedia, Anggota IKAPI, Jakarta 2017
[email protected]
ID: 717051967
ISBN: 978-602-04-5017-9
Dilarang keras menerjemahkan, memfotokopi, atau memperbanyak sebagian
atau seluruh isi buku ini tanpa izin tertulis dari penerbit.
Dicetak oleh Percetakan PT Gramedia, Jakarta
Isi di luar tanggung jawab percetakan
Kata Pengantar
MySQL adalah software sistem manajemen database yang paling
populer. Apabila Anda serius di bidang pemrograman website
maupun pembuatan aplikasi lintas platform, maka MySQL merupakan
software yang layak dipelajari.
MySQL bersifat lintas platform, sehingga penguasaan buku ini bisa
membantu Anda bekerja di platform berbeda, seperti MS Windows
maupun Linux. Buku ini memang dirancang untuk para pemula yang
membutuhkan pemahaman dasar tentang bagaimana cara kerja
MySQL, baik server maupun client.
Semoga setelah membaca buku ini, Anda bisa mengembangkan
keahlian lebih lanjut di bidang database baik untuk pembuatan
aplikasi desktop maupun online.
Selamat membaca!
Yogyakarta, 1 Oktober 2017
Jubilee Enterprise
“We Make Bestseller Book”
Thinkjubilee.com
v
Daftar Isi
Kata Pengantar ............................................................................. v
Daftar Isi ..................................................................................... vii
Bab 1 Pendahuluan ....................................................... 1
Apa Itu Database? ........................................................... 1
Terminologi RDBMS ......................................................... 2
Database MySQL ............................................................ 3
Download dan Instalasi MySQL ........................................ 3
Instalasi MySQL Server.................................................... 6
Menguji Instalasi ........................................................... 11
Struktur File dan Folder MySQL ....................................... 13
Folder Bin ....................................................................... 14
Folder Doc ...................................................................... 15
Folder Include ................................................................. 15
Folder lib ........................................................................ 15
Folder Share ................................................................... 16
Folder Data..................................................................... 16
Mengenal File My.Ini ....................................................... 16
vii
Menjalankan MySQL Secara Manual .............................. 18
Proses Mengaktifkan MySQL Secara Manual ...................... 19
Menghentikan MySQL Server .......................................... 22
Bab 2 Pemahaman MySQL Client dan Server ............... 23
MySQL Client ................................................................ 23
Menjalankan MySQL Client ............................................ 24
Memulai Koneksi dengan MySQL Server .......................... 26
Keluar dari MySQL Client ............................................... 28
Mengenal Perintah (Query) MySQL ................................. 28
Menggunakan \g dan \G ................................................ 30
Membatalkan Perintah ................................................... 31
Aturan Penggunaan Huruf Besar dan Kecil ....................... 32
Membuat Database Baru ................................................ 33
Melihat Daftar Database di dalam MySQL Server ............. 34
Memilih dan Menggunakan Database ............................. 35
Cara Menghapus Database ............................................ 35
Bab 3 Membuat Tabel Baru.......................................... 37
Cara Membuat Tabel ..................................................... 37
Melihat Struktur Tabel .................................................... 40
Menghapus Tabel .......................................................... 41
Tipe Data Numerik ........................................................ 42
Integer ........................................................................... 42
viii
Fixed Point...................................................................... 43
Floating Point .................................................................. 43
Memahami Unsigned ....................................................... 44
Memahami Zerofill .......................................................... 44
Tipe Data String ............................................................ 44
Char & Varchar............................................................... 45
Binary & Varbinary .......................................................... 45
Text ............................................................................... 46
Blob ............................................................................... 46
Tipe Data DATE ............................................................. 47
Tipe Data Enum ............................................................. 48
Tipe Data Set ................................................................ 49
Atribut pada Tipe Data................................................... 49
Atribut AUTO_INCREMENT .............................................. 49
Atribut BINARY ............................................................... 49
Atribut DEFAULT .............................................................. 50
Atribut NOT NULL ........................................................... 50
Atribut NULL ................................................................... 50
Atribut SIGNED dan UNSIGNED ...................................... 50
Bab 4 Memodifikasi Tabel ........................................... 51
Mengubah Tipe Data Kolom Tabel .................................. 53
Mengubah Nama Kolom ................................................ 54
Mengubah Nama Tabel ................................................. 55
ix
Menambah Kolom Baru.................................................. 56
Menghapus Kolom......................................................... 57
Menjadikan Kolom sebagai Primary Key .......................... 58
Bab 5 Memasukkan Data ke dalam Tabel.................... 61
Menggunakan INSERT ................................................... 61
Menambah Beberapa Data Sekaligus ................................ 63
Mengisi Data ke dalam Kolom Secara Tidak Berurutan ...... 66
Menggunakan Ignore..................................................... 67
Bab 6 Menghapus Data dan Tabel ............................... 71
Menghapus Data ........................................................... 71
Menggunakan AND atau OR.......................................... 72
Menghapus Seluruh Data ............................................... 72
Menghapus Tabel .......................................................... 73
Bab 7 Menampilkan dan Mencari Data ........................ 75
Menampilkan Data ........................................................ 75
Menampilkan Beberapa Kolom ......................................... 76
Mengurutkan Data Sesuai dengan Kolom Tertentu ............... 77
Mencari Data ................................................................ 77
Menggunakan Karakter Pencarian................................... 79
Menggunakan And atau Or............................................ 80
Menggunakan Operator................................................. 81
x
Bab 8 Meng-update Data ............................................. 85
Update Lebih dari Satu Data ........................................... 86
Bab 9 Manajemen User ............................................... 87
Mengenal 'root' ............................................................ 87
Membuat User Baru ....................................................... 88
Menghapus User ........................................................... 89
Memberi Hak Akses (Privileges) ...................................... 90
Memberi Hak Akses untuk Seluruh Tabel .......................... 91
Memberi Hak Akses untuk Kolom Tertentu ........................ 91
Memberi Hak Akses Penuh ............................................. 92
Bab 10 Mengelola MySQL Menggunakan XAMPP .......... 93
Men-download XAMPP................................................... 94
Menjalankan MySQL ..................................................... 95
Membuat Database Baru Menggunakan phpmyadmin ....... 98
Membuat Tabel Data_Kota ............................................. 102
Membuat Key ............................................................... 104
Melihat Relasi Antartabel Melalui Foreign Key .................. 108
Memasukkan Data Baru Menggunakan phpmyadmin ...... 109
Memasukkan Data Baru ke dalam tabel_data_kota ........... 110
Memasukkan Data Baru ke dalam tabel_data_penduduk ... 112
Melihat Data-Data di dalam Tabel ................................... 113
Menampilkan Database ............................................... 114
xi
Table Structure ............................................................ 115
Menata Posisi Kolom...................................................... 116
Backup Database ........................................................ 117
Restore ......................................................................... 119
Memperbaiki Tabel ...................................................... 120
Memindah/Mengopi Tabel dari Satu Database
ke Database Lain ......................................................... 121
Mengubah Nama Tabel ............................................... 123
Bab 11 Menampilkan Database di dalam Website ....... 125
Menampilkan Data Tabel ............................................. 125
Fungsi mysqli_query....................................................... 126
Fungsi mysqli_fetch_row ................................................. 127
Menggunakan Perulangan While .................................... 130
Fungsi mysqli_fetch_array ............................................... 131
Menampilkan Data Tabel Menggunakan PHP+HTML ......... 133
Menambah Data Baru .................................................. 135
Mendesain Form ........................................................... 136
Mengenal Query INSERT................................................ 137
Mengenal Query INSERT (nama_kolom) VALUES .............. 144
Query untuk Menampilkan Data .................................... 147
Query untuk Menampilkan Data di dalam Tabel ............. 148
Menggunakan ORDER BY .............................................. 150
Menggunakan WHERE .................................................. 153
xii
Menggunakan LIKE ........................................................ 155
Menggabungkan Dua Tabel ......................................... 158
SQL JOIN ..................................................................... 161
Menampilkan Data pada Form...................................... 161
Alternatif Menggunakan Radio Button .............................. 166
Tentang Penulis ......................................................................... 169
xiii
BAB 1
Pendahuluan
Apa Itu Database?
Database adalah suatu aplikasi yang menyimpan sekumpulan data.
Setiap database mempunyai perintah tertentu untuk membuat, meng-
akses, mengatur, mencari, dan menyalin data yang ada di dalamnya.
Untuk menampung dan mengatur data yang begitu banyak, Anda dapat
menggunakan Relational Database Management Systems (RDBMS). Hal
ini disebut relational database karena semua data disimpan dalam tabel-
tabel berbeda dan dihubungkan berdasarkan relasinya menggunakan
primary key dan foreign key.
Relational Database Management Systems (RDBMS) adalah software
yang:
Memungkinkan Anda mengimplimentasikan sebuah database
dengan tabel-tabel, kolom-kolom, dan indeks-indeks.
Menjamin integritas referensi di antara baris-baris pada
berbagai tabel.
Meng-update indeks-indeks secara otomatis.
Menginterpretasikan query SQL dan menggabungkan informasi
dari berbagai tabel.
1
MySQL adalah salah satu contoh database berjenis Relational Database
Management System (RDBMS) tersebut.
Terminologi RDBMS
Dalam perkembangannya, RDBMS memiliki beberapa istilah teknis yang
melekat pada dirinya. Berikut ini adalah istilah-istilah yang digunakan
dalam database:
Database: merupakan kumpulan tabel-tabel yang berisi data-
data yang saling berkaitan.
Tabel: merupakan matriks berisi data. Tabel dalam database
terlihat seperti spreadsheet sederhana.
Kolom: satu kolom (elemen data) mengandung data dengan
satu jenis yang sama.
Baris: sebuah baris (masukan atau rekaman data) yang
merupakan sekumpulan data yang berhubungan.
Redundancy: menyimpan data dua kali secara redundan untuk
membuat sistem berjalan lebih cepat.
Primary Key: key yang bersifat unik. Sebuah nilai key tidak
dapat digunakan dua kali dalam satu tabel.
Foreign Key: merupakan penghubung antara dua tabel.
Compound Key: disebut juga composite key, merupakan key
yang terdiri atas beberapa kolom.
Indeks: merupakan indeks dalam database yang menyerupai
indeks pada buku.
Integritas referensial: digunakan untuk memastikan nilai
foreign selalu mengacu pada suatu baris yang ada.
2
Database MySQL
MySQL adalah RDBMS yang cepat dan mudah digunakan, serta sudah
banyak dipakai untuk berbagai kebutuhan. MySQL dikembangkan oleh
MySQL AB Swedia. Hampir sebagian besar aplikasi website yang ada di
internet dikembangkan menggunakan MySQL dan bahasa pemrograman
lainnya, seperti PHP.
Berikut ini hal-hal yang menyebabkan MySQL menjadi begitu populer:
Berlisensi open-source, sehingga Anda dapat menggunakannya
secara gratis.
Merupakan program yang powerful dan menyediakan fitur yang
lengkap.
Menggunakan bentuk standar bahasa data SQL.
Dapat bekerja dengan banyak sistem operasi dan dengan
bahasa-bahasa pemrograman, seperti PHP, PERL, C, C++, JAVA,
dan lain-lain.
Bekerja dengan cepat dan baik, bahkan dengan data set yang
banyak.
Sangat mudah digunakan dengan PHP untuk pengembangan
aplikasi web.
Mendukung banyak database, sampai 50 juta baris atau lebih
dalam suatu tabel.
Dapat dikustomisasi sesuai dengan keinginan Anda.
Download dan Instalasi MySQL
MySQL adalah database yang cukup terkenal karena hampir sebagian
besar aplikasi berbasis website, seperti WordPress dilengkapi dengan
MySQL. Selain itu, MySQL juga ditawarkan dalam berbagai versi,
3
termasuk versi gratisan. Di dalam buku ini, MySQL yang digunakan
adalah versi gratis.
Karena sebagian besar pembaca buku kami menggunakan sistem operasi
MS Windows, maka MySQL yang dipakai dalam buku ini ber-platform
MS Windows. Berikut langkah-langkahnya:
1. Luncurkan browser dan masuk ke dalam halaman resmi MySQL
dengan mengetik alamat berikut: www.mysql.com.
2. Klik menu Downloads.
Memilih menu Downloads
3. Gulung layar sampai Anda menemukan link MySQL Community
Edition. Klik link tersebut.
MySQL Community Edition
4. Lanjutkan dengan memilih MySQL Community Server.
4
MySQL Community Server
5. Klik link Download MySQL Installer.
6. Gulung layar ke bawah dan klik tombol Download pada baris
Windows (x86, 32-bit), MSI Installer dengan ukuran file 378.8 Mb.
Sebagai catatan, mungkin Anda menemukan versi 64-bit. Jika
Windows Anda mendukung versi 64-bit, maka pilih saja.
Pilih tombol Download untuk installer MySQL
7. Tunggu file selesai diunduh hingga tuntas.
5
Tentang Penulis
Jubilee Enterprise, telah dipercaya oleh penerbit dan pembaca buku
tanah air dalam satu dasawarsa ini. Hingga sekarang, tulisan-
tulisannya yang diterbitkan dalam bentuk buku telah mencapai hampir
400 judul, sebagian besar bertema teknologi informasi dan kemudian
disusul dengan tema psikologi & parenting, manajemen, fotografi,
anak-anak, dan tema umum lainnya. Salah satu imprint Jubilee
Enterprise adalah Jubilee Authors Companion yang merupakan
sahabat bagi para penulis-penulis profesional yang ingin tetap
berkarya.
Anda dapat memperoleh informasi lebih lanjut tentang Jubilee
Enterprise lewat situs: www.thinkjubilee.com.
Catatan:
Untuk melakukan pemesanan buku, hubungi
Layanan Langsung PT Elex Media Komputindo:
Gramedia Direct
Jl. Palmerah Barat No. 29-37, Jakarta 10270
• Telemarketing/CS: 021-53650110/111
ext: 3901/3902/3292
169