Top Banner
DATABASE - MySQL Muhammad Zen S. Hadi, ST. MSc.
43

T modul 5 mysql

Jul 06, 2015

Download

Technology

Mochlist

gee
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: T modul 5 mysql

DATABASE - MySQL

Muhammad Zen S. Hadi, ST. MSc.,

Page 2: T modul 5 mysql

Objectives

Tujuan:

Memahami perintah-perintah dasar DDLdan DML

Page 3: T modul 5 mysql

Contents

Database DBMS Relational model

SQL MySQL MySQL MySQL yang support ke relational model yaitu innodb. Standar tabel yang di MySQL adalah MyISAM.

Page 4: T modul 5 mysql

Database

Database a collection of data Entity, relationship

DBMS Database management system Database management system

Page 5: T modul 5 mysql

Constraints

NOT NULLTidak boleh berisi NULL (kosong).

UNIQUESatu data dengan data yang lainnya tidak boleh samaSatu data dengan data yang lainnya tidak boleh sama.

PRIMARY KEY FOREIGN KEY

Sebagai relasi antara 2 tabel.

Page 6: T modul 5 mysql

START A MYSQL CLIENT

Connect mysql [–h host] [–u user] [–p[password]] [dbname] mysql [–h host] [–u user] [–p[password]] [dbname]

>mysql -u root -p Enter password: ********Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 14 to server version: 3 23 34a3.23.34aType 'help;' or '\h' for help. Type '\c' to clear the buffermysql>mysql>

Keluar dengan perintah quit atau exit. S tti d di fi i h ( t k b h d d) Setting ada di config.inc.php (untuk merubah user dan password)

Page 7: T modul 5 mysql

Tipe data di MySQL

Dalam bahasa SQL pada umumnya informasi tersimpan dalam tabel-tabel yang secara logik merupakan struktur dua dimensi terdiri dari baris (row y g g p (atau record) dan kolom(column atau field). Sedangkan dalam sebuah database dapat terdiri dari beberapa table.

Beberapa tipe data dalam MySQL yang sering dipakai:

Page 8: T modul 5 mysql

MEMBUAT DATABASE DAN TABLE

Cara untuk membuat sebuah database baru adalah dengan perintah:create database namadatabase;create database namadatabase;

Contoh: create database privatdb;

Untuk membuka sebuah database dapat menggunakan perintah Untuk membuka sebuah database dapat menggunakan perintah berikut ini:

use namadatabase;Contoh: use privatdb;

Perintah untuk membuat tabel baru adalah:create table namatabel((struktur);

Untuk DDL, gunakan phpmyadmin agar lebih mudah.

Page 9: T modul 5 mysql

MySQL

Data Definition Language (DDL)Data Definition Language (DDL)

CREATE/DROP DATABASE dbname; SHOW DATABASES; SHOW DATABASES; USE dbname;

CREATE TABLE table name (field name type CREATE TABLE table_name (field_name type,.., constraints,..);

SHOW TABLES; SHOW COLUMNS FROM table name; SHOW COLUMNS FROM table_name; DROP TABLE table_name;

Page 10: T modul 5 mysql

MySQL

Data Manipulation Language (DML) Data Manipulation Language (DML)

INSERT INTO table_name [(field_name,..)]VALUES (value );VALUES (value,..);

DELETE FROM table_name WHERE ditiWHERE condition;

UPDATE table_nameSET fi ld lSET field_name=value,..[WHERE condition];

Page 11: T modul 5 mysql

MySQL

Data manipulation(2)p ( )

SELECT field_name [as field_name],..FROM table nameFROM table_name[WHERE condition][ORDER BY field_name];

=, <, >, AND, OR, NOT(field_name LIKE “_%….”)

Page 12: T modul 5 mysql

MEMBUAT DATABASE DAN TABLE

Contoh: Misalkan kita ingin menyimpan data anggota yaitu: g y p gg y

nomor, nama, email, alamat, kota. Sedangkan strukturnya seperti tabel dibawah ini:

Page 13: T modul 5 mysql

Data yang diinginkan

Page 14: T modul 5 mysql

Menggunakan phpMyAdmin

software yang digunakan untuk membuat dan y g gmemaintenance database

Kita dapat mengakses database MySQL dengan account kita di phpMyAdmin.

Pastikan server MySQL dan program phpMySQL d h b j lsudah berjalan.

untuk membuka tampilan phpMyAdmin di komputer lokal melalui URL komputer lokal melalui URL http://localhost/phpmyadmin/

Page 15: T modul 5 mysql

Masukkan login sebagai root atau sesuai dengan user yang sudah dibuat

Page 16: T modul 5 mysql

Menentukan field dan type data

Page 17: T modul 5 mysql

Contoh Tabel

Page 18: T modul 5 mysql

Create Tabel dengan phpmyadmin

Page 19: T modul 5 mysql

MEMBUAT DATABASE DAN TABLE

Perintah MySQL untuk membuat tabel seperti diatasadalah:

bl (create table anggota(nomor int(6) not null primary key,nama char(40) not null,

l h llemail char(255) not null,alamat char(80) not null,kota char(20) not null);

Untuk memasukkan sebuah baris (record) kedalam tabelMySQL adalah sebagai berikut:

i t i t t b l l (k l k l insert into namatabel values(kolom1, kolom2, kolom3,…);

Contoh:i t i t t l insert into anggota values (106,'faruq','[email protected]','Jl. Raya 152','Kediri');

Page 20: T modul 5 mysql

MENGHAPUS RECORD

Untuk menghapus suatu record dengan kriteria tertentu g p gdigunakan perintah sebagai berikut:

delete from namatabel where kriteria; Contoh: Menghapus record dari tabel anggota yang Contoh: Menghapus record dari tabel anggota yang

bernomor ‘3’delete from anggota where nomor=3;

DELETE FROM anggota; DELETE FROM anggota;

Will delete ALL anggotarecords!records!

Page 21: T modul 5 mysql

MEMODIFIKASI RECORD

Untuk memodifikasi (merubah) isi record tertentu adalah dengan menggunakan perintahdengan menggunakan perintahsebagai berikut:update namatabel set kolom1=nilaibaru1, update namatabel set kolom1 nilaibaru1, kolom2=nilaibaru2 … where kriteria;

Contoh:Merubah e-mail dari anggota yang bernomor 12 j di ‘ i@ h ’ d l b l menjadi ‘[email protected]’ dalam tabel anggota.

update anggota set email=’[email protected]’ where nomor=12;nomor 12;

Untuk merubah kolom kota menjadi ‘surabaya’ semuanya dalam tabel anggotaupdate anggota set kota=‘surabaya’;

Page 22: T modul 5 mysql

MENAMPILKAN ISI TABLE

Isi tabel dapat ditampilkan dengan menggunakan perintah SELECT, cara penulisan perintah SELECT adalah:cara penulisan perintah SELECT adalah:

select nm_kolom from namatable;

Page 23: T modul 5 mysql

Konsep Dasar SQL Query

• Bentuk SQL Query umum:SELECT [DISTINCT] < attribute-list >FROM < table-list >WHERE < condition>

• Attribute- list: adalah daftar nama atribut yang berada dalam table-list dan nilainya didapatkan melalui query.T bl li t d l h d ft l i iliki (d d i i b l d ti• Table- list: adalah daftar relasi yang memiliki nama (dengan domain variabel pada tiap nama yang diberikan) untuk memproses query.

• Condition: adalah statemen pembandingan dalam SQL Query yang mengkombinasikan operator pembandingan AND OR dan NOToperator pembandingan AND, OR dan NOT.

• Sedangkan DISTINCT adalah keyword yang bersifat optional (boleh ditulis, boleh tidak) yang mengindikasikan suatu hasil query yang tidak memiliki duplikat. Secara default, didapatkan duplikasi pada hasil query (tanpa distinct).

Page 24: T modul 5 mysql

Contoh Aplikasi (Google)

Page 25: T modul 5 mysql

S Q L – Menghilangkan Data Row Duplikat

Page 26: T modul 5 mysql

S Q L – Operasi Pembanding

Page 27: T modul 5 mysql

S Q L – Operasi Pembanding

Page 28: T modul 5 mysql

S Q L – Operasi Pembanding

Page 29: T modul 5 mysql

S Q L – Operasi Pembanding

• Gunakan kondisi LIKE untuk melakukan pencarian sebagian nilai string.p g g• Kondisi pencarian dapat menggunakan simbol karakter berikut:

• % : menunjukkan nol/kosong atau sembarang beberapa karakter.j kk b 1 k k• _ : menunjukkan sembarang 1 karakter.

Page 30: T modul 5 mysql

S Q L – Operasi Pembanding

8 rows selected. 8 rows selected.

Page 31: T modul 5 mysql

S Q L – Operasi Pembanding

Operator Arti

AND Returns TRUE, jika kedua kondisi adalah True

OR R t TRUE jik l h t k di i d l h TOR Returns TRUE, jika salah satu kondisi adalah True

NOT Returns TRUE, jika kondisi tersebut adalah False

Page 32: T modul 5 mysql

S Q L – Operasi Pembanding

Page 33: T modul 5 mysql

S Q L – Operasi Pembanding

Page 34: T modul 5 mysql

S Q L – JOIN

• Syntax Join SQL:

SELECT table1.column, table2.columnFROM table1, table2WHERE table1.column1 = table2.column2;

Page 35: T modul 5 mysql

S Q L – Join

• Join adalah bentuk kondisi join dimana nilai relasi yang terjadi antar dua atau lebih table (binary relation) adalah sama (terdapatantar dua atau lebih table (binary relation) adalah sama (terdapat hubungan antara Primary Key dan Foreign Key)Contoh:

Page 36: T modul 5 mysql

S Q L – Join

Retrieving Records with joinsSELECT employees.employee_id, employees.last_name,

employees.department_id, departments.department_id,departments.location_id

FROM employees departmentsFROM employees, departmentsWHERE employees.department_id = departments.department_id;

Page 37: T modul 5 mysql

S Q L – Join

SELECT last_name, employees.department_id,

Kondisi Join dengan Operator AND

department_nameFROM employees, departmentsWHERE employees.department_id = departments.department_idAND last name = 'Matos‘;AND last_name = 'Matos‘;

EMPLOYEES DEPARTMENTS

… …

Page 38: T modul 5 mysql

S Q L – Join

Kondisi Join Menggunakan Table Alias• Menyederhanakan queries dengan menggunakan table

alias.• Meningkatkan performance

SELECT l id l t d t t id

• Meningkatkan performance.

SELECT e.employee_id, e.last_name, e.department_id,d.department_id, d.location_id

FROM employees e , departments dd id d d idWHERE e.department_id = d.department_id;

Page 39: T modul 5 mysql

S Q L – JoinK di i J i M k T bl Ali

SELECT e.last_name, d.department_name, l.cityFROM employees e, departments d, locations l

Kondisi Join Menggunakan Table Alias

WHERE e.department_id = d.department_idAND d.location_id = l.location_id;

EMPLOYEES LOCATIONSDEPARTMENTSEMPLOYEES LOCATIONSDEPARTMENTS

Page 40: T modul 5 mysql

Data Field dengan spasi

Jika ingin perintah select :select * from uang where `tukar uang` = ‘euro’;select * from uang where `tukar uang` = “euro”;

Perhatikan tanda pada tukar uang beda dengan euro

Page 41: T modul 5 mysql

Latihan Soal Diketahui tabel anggota berikut ini:

• Buatlah perintah selecta. Tampilkan data ID dan nama yang berdomisili di Surabaya.b. Tampilkan nama yang gajinya diatas 15000c. Tampilkan nama yang berawalan huruf Fd. Tampilkan nama yang berakhiran f

Page 42: T modul 5 mysql

Latihan Soal

Diketahui relasi tabel sbb:

• Buat perintah untuk :a Menambahkan data di tabel pegawaia. Menambahkan data di tabel pegawaib. Mengedit data di tabel departemen c. Delete data di tabel pegawai yang beralamat di Surabayap g y g yd. Tampilkan data Nama dan alamat pegawai dan nama departemen yang berdomisili di jakarta

Page 43: T modul 5 mysql

Latihan Soal

Diketahui relasi tabel sbb:

• Buat perintah untuk :a. Menambahkan data di tabel mahasiswa, nilaiMHS dan MtKuliahb Mengedit data di tabel NilaiMHSb. Mengedit data di tabel NilaiMHSc. Delete data di tabel MtKuliah yang berkode VT001d. Tampilkan data Nama dan alamat mahasiwa, nama matad. Tampilkan data Nama dan alamat mahasiwa, nama mata kuliah, SKS dan nilainya.