sql - pw.if-unpas.orgpw.if-unpas.org/slide/8.mysql_.pdf · november,16,,2015...
TRANSCRIPT
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
3
Apa itu database ?
l Kumpulan data terstruktur yang saling berelasi.
l Definisi : Kumpulan data, yang terorganisir secara logika, dikelola
menggunakan metode tertentu yang menjamin konsistensi data.
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
4
Penerapan Databasel Meliputi hampir seluruh aspek kehidupan manusia.l Contoh Penerapan :
l Perbankan : semua transaksil Penerbangan : reservasi, jadwall Universitas : registrasi, data perkuliahanl Perdagangan : produk, pelanggan, transaksi pembelianl Manufaktur : produksi, persediaan, pesanan, supply chainl HRD : pegawai, gaji, pajakl Telekomunikasi : routing, pelanggan, penggunaan layananl Akun komputer : member, hak akses, quotal Dan masih banyak lagi....
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
5
Jenis-‐jenis Database
l CSVl Fgetscsv, fputcsv
l XMLl simpleXML
l MySQLl mysql, mysqli, PDO
l SQLitel PDO
l ...
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
6
Relational Database
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
7
Konsep Relational Database
l Tablel Kumpulan dari beberapa record
l Recordl Kumpulan dari data mengenai suatu item.
l Fieldl Item data tunggal
l Key field / Primary keyl Identitas unik setiap record.
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
8
Table
Member ID Nama Alamat Status
2312 Donna 1029 Wolf Avenue A
2313 Shannon 33099 Clark Street A
2314 Adrian 15 Duluth Street N
Record Primary Key Field
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
9
Aplikasi Database
l Database Management System (DBMS)
l Aplikasi yang dirancang untuk menyimpan dan mengelola satu atau
lebih database.
l Fungsi :
l Buat database, tabel, dan struktur pendukung
l Manipulasi data
l Menjaga struktur database
l Backup dan Recovery
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
10
Aplikasi Databasel IBM DB2l Oraclel Informixl Ingresl Microsoft SQL Server (MS SQL)l mSQLl MySQLl PostgreSQLl Sybase
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
12
Menjalankan Server MySQL
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
13
Masuk ke MySQL (Command Prompt)
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
14
1. Jalankan server mysql lewat XAMPP Control Panel
2. Buka Command Promt, lalu arahkan ke dalam folder :
xampp/mysql/bin
3. Jalankan perintah: mysql -u root -p
4. Password default untuk mysql di windows adalah kosong,
jadi tekan enter saja ketika diminta password (bisa
dikonfigurasi sendiri)
Masuk ke MySQL (Command Prompt)
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
16
DDL (Data Definition Language)l SHOW DATABASESl CREATE DATABASEl ALTER DATABASEl DROP DATABASEl USE
l DESCRIBEl CREATE TABLEl ALTER TABLEl DROP TABLEl RENAME TABLE
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
17
DML (Data Manipulation Language)
l SELECTl INSERTl UPDATEl DELETE
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
18
DML – Data Manipulation Language
l Rekam Data
l INSERT INTO nama_tabel (field1, field2, ...)
VALUES (value1, value2, ...);
l Jika field tidak dideklarasikan, data yang dimasukkan jumlahnya harus
sama dengan jumlah field dari table tersebut.
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
19
DML – Data Manipulation Language
l Cari Data
l SELECT * FROM nama_tabel
WHERE syarat1, syarat2
ORDER BY field ASC
l Jika menggunakan *, semua field pada tabel tersebut di tampilkan.
l Where dan order by optional
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
20
DML – Data Manipulation Language
l Manipulasi Datal Edit
l UPDATE nama_tabelSET field1=value1, field2=value2, ...
WHERE syarat1, syarat2, ...
l Hapusl DELETE FROM nama_tabel
WHERE syarat1, syarat2, ...
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
22
Buat database ‘unpas’
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
23
Buat buat tabel ‘mahasiswa’
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
24
Isi 5 baris data
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
25
Ubah status baris 1 dan 2 jadi ‘tidak lulus’
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
26
Hapus baris terakhir
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
27
Hapus tabel mahasiswa
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
28
Hapus database unpas
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
31
Lakukan hal yang sama seperti menggunakan command prompt
?
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
33
Struktur Tabel
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
34
Tipe Data MySQL
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
35
Indexl Agar pencarian data lebih cepat dan optimal.l Diperlukan untuk membuat relasi (primary & foreign
key) antar tabell Jenis Index
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
37
RELATIONmahasiswa
buku
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
38
RELATIONmahasiswa (master)
buku (master)
peminjaman (transaksi)
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
41
RELATION
l id_mhs merupakan foreign key di tabel peminjaman dan primary key di tabel mahasiswa
l id_buku merupakan foreign key di tabel peminjaman dan primary key di tabel buku
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
43
RELATION
l Tipe Relasi: l Cascade : jika id_mhs di tabel mahasiswa diubah/dihapus, maka id_mhs di tabel peminjaman juga akan terubah/terhapus
l Restrict: operasi ubah/hapus id_mhs di tabel mahasiswa tidak diperbolehkan
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
44
JOIN
l Bagaimana cara menampilkan data peminjaman, tetapi menampilkan nama dan judul buku?
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
45
JOIN
l Bagaimana cara menampilkan data peminjaman, tetapi menampilkan nama dan judul buku?
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
46
JOIN
SELECT mahasiswa.nama, buku.judul, peminjaman.tanggal_pinjam, peminjaman.tanggal_kembali
FROM mahasiswa, buku, peminjamanWHERE peminjaman.id_mhs = mahasiswa.id
AND peminjaman.id_buku = buku.id;
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
47
JOIN
SELECT mahasiswa.nama, buku.judul, peminjaman.tanggal_pinjam, peminjaman.tanggal_kembali
FROM mahasiswaINNER JOIN peminjaman ON
mahasiswa.id = peminjaman.id_mhsINNER JOIN buku ON
buku.id = peminjaman.id_buku;
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
48
JOIN
l Tipe JOIN:l JOINl LEFT JOINl RIGHT JOINl INNER JOIN
November 16, 2015 Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS
49
Storage Engine
Backup and Recovery (import/export)Kenapa harus dilakukan Backup berkala ?l Ancaman jarang terjadi, tapi bisa saja terjadi.l Aplikasi DBMS error.l File tabel atau database rusak.l Komputer server sewaktu-‐waktu bisa rusak.l Harddisk bisa corrupt.l Kebakaran.l Bencana alam.
l Setidaknya pernah buat 1 file full database backup.l Sebaiknya lakukan backup berkala.l Simpan file backup setidaknya di 3 lokasi berbeda.
l Komputer yang sama, komputer berbeda atau DVD, dan gedung berbeda.
16 November 2015 50Tim Dosen Pemrograman Web II 2015 -‐ 2016Teknik Informatika UNPAS