sql - pw.if-unpas.orgpw.if-unpas.org/slide/8.mysql_.pdf · november,16,,2015...

53
SQL Pemrograman Web II Ganjil 2015 2016

Upload: vuongmien

Post on 07-Jun-2019

220 views

Category:

Documents


0 download

TRANSCRIPT

SQL

Pemrograman  Web  IIGanjil  2015  -­‐ 2016

Review  Database

Structured  Query  Language

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

MySQL

Konfigurasi

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)

MySQL

Manipulasi  Datahttp://dev.mysql.com/doc/refman/5.5/

en/sql-syntax.html

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, ...

MySQL

Latihan

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

phpmyadmin

http://localhost/phpmyadmin

November  16,  2015 Tim  Dosen  Pemrograman  Web  II  2015  -­‐ 2016Teknik  Informatika  UNPAS

30

phpmyadmin

November  16,  2015 Tim  Dosen  Pemrograman  Web  II  2015  -­‐ 2016Teknik  Informatika  UNPAS

31

Lakukan  hal  yang  sama  seperti  menggunakan  command  prompt

?

DBMS

MySQL

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

36

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

39

RELATION

November  16,  2015 Tim  Dosen  Pemrograman  Web  II  2015  -­‐ 2016Teknik  Informatika  UNPAS

40

RELATION

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

42

RELATION

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

Backup

16  November  2015 51Tim  Dosen  Pemrograman  Web  II  2015  -­‐ 2016Teknik  Informatika  UNPAS

Recovery

16  November  2015 52Tim  Dosen  Pemrograman  Web  II  2015  -­‐ 2016Teknik  Informatika  UNPAS

Terima  KasihPemrograman  Web  2  -­‐ 20152016

[email protected]@unpas.ac.id