modul 1

39
Overview MySQL Overview MySQL MySQL merupakan MySQL merupakan Database Server yang Database Server yang bersifat : bersifat : Open Source Open Source Multiplatform Multiplatform Berbasis Berbasis database database relasional relasional Bisa dipakai untuk Bisa dipakai untuk database pribadi atau pada database pribadi atau pada level korporat berskala level korporat berskala kecil hingga besar kecil hingga besar Selain bersifat free, ada Selain bersifat free, ada juga yang bersifat juga yang bersifat komersial komersial

Upload: aal-hardian

Post on 16-Jul-2015

50 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Modul 1

Overview MySQLOverview MySQL MySQL merupakan MySQL merupakan

Database Server yang Database Server yang bersifat :bersifat :• Open SourceOpen Source• MultiplatformMultiplatform• Berbasis Berbasis database database

relasionalrelasional Bisa dipakai untuk Bisa dipakai untuk

database pribadi atau pada database pribadi atau pada level korporat berskala level korporat berskala kecil hingga besarkecil hingga besar

Selain bersifat free, ada Selain bersifat free, ada juga yang bersifat juga yang bersifat komersialkomersial

Page 2: Modul 1

Overview MySQLOverview MySQL(Lanjutan…)(Lanjutan…)

Menggunakan Menggunakan SQL untuk SQL untuk mendukung mendukung pengaksesan pengaksesan data (data (queryquery))

Hasil dari permintaan

Klien Server

Permintaan berupa pernyataan seperti: SELECT * FROM bintang;

Page 3: Modul 1

Dasar SQLDasar SQL

SQL = Structured Query LanguageSQL = Structured Query Language Digunakan untuk mengakses basis Digunakan untuk mengakses basis

data relasionaldata relasional Bersifat standar; bisa dipakai untuk Bersifat standar; bisa dipakai untuk

basis data relasional lainnyabasis data relasional lainnya Perintah SQL dapat dibagi menjadi Perintah SQL dapat dibagi menjadi

DDL dan DMLDDL dan DML

Page 4: Modul 1

Perintah DDLPerintah DDL

DDL = DDL = Definition Data LanguageDefinition Data Language Digunakan untuk kepentingan Digunakan untuk kepentingan

penciptaan database, tabel, hingga penciptaan database, tabel, hingga penghapusan database atau tabelpenghapusan database atau tabel

Contoh:Contoh:• CREATE DATABASECREATE DATABASE• CREATE TABLECREATE TABLE• DROP TABLEDROP TABLE• ALTER TABLEALTER TABLE

Page 5: Modul 1

Perintah DMLPerintah DML

DML = DML = Data Manipulation LanguageData Manipulation Language Digunakan untuk memanipulasi dataDigunakan untuk memanipulasi data Contoh:Contoh:

• SELECT – mengambil dataSELECT – mengambil data• DELETE – menghapus dataDELETE – menghapus data• INSERT – menyisipkan dataINSERT – menyisipkan data• UPDATE – mengubah dataUPDATE – mengubah data

Page 6: Modul 1

Persiapan Pemakaian MySQLPersiapan Pemakaian MySQL

Lakukan instalasi MySQL terlebih Lakukan instalasi MySQL terlebih duludulu

MySQL memiliki sejumlah MySQL memiliki sejumlah tooltool; salah ; salah satu di antaranya adalah:satu di antaranya adalah:• program program mysqlmysql, yang dipakai untuk , yang dipakai untuk

mengakses mengakses databasedatabase dari sisi klien dari sisi klien• Program Program mysqladminmysqladmin, untuk mengelola , untuk mengelola

MySQL dari sisi administrator sistemMySQL dari sisi administrator sistem

Page 7: Modul 1

Masuk ke Direktori ProgramMasuk ke Direktori Program

Masuk ke prompt DOSMasuk ke prompt DOS Ketik perintah:Ketik perintah:

cd c:\”Program Files”\MysQL\”MySQL Server 5.0”cd c:\”Program Files”\MysQL\”MySQL Server 5.0” Berikan perintah cd binBerikan perintah cd bin

Page 8: Modul 1

Mengatur Password rootMengatur Password root

rootroot adalah pemakai dengan adalah pemakai dengan wewenang paling tinggi dan wewenang paling tinggi dan digunakan untuk admin sistemdigunakan untuk admin sistem

Perintah untuk mengubah password Perintah untuk mengubah password root:root:mysqladmin –uroot password mysqladmin –uroot password rahasiarahasia

Page 9: Modul 1

Masuk ke Program Klien mysqlMasuk ke Program Klien mysql

Berikan perintah:Berikan perintah:mysql –uroot –pmysql –uroot –p

Ketikkan password dan tekan EnterKetikkan password dan tekan Enter

C:\Program Files\MySQL\MySQL Server 5.0\bin>mysql -uroot -prahasiaWelcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 8 to server version: 5.0.15-nt

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

Page 10: Modul 1

Pembuatan Database dan TabelPembuatan Database dan Tabel

Database: Pegawai

Tabel: Pribadi

Field:

-NIP

-Nama

-Tgl_Lahir

-Sex

-Alamat

-Kota

Tabel: Pekerjaan

Field:

-NIP

-Tgl_Masuk

-Kode_Bag

-Gaji

Tabel: Bagian

Field:

-Kode_Bag

-Nama_Bag

Page 11: Modul 1

Membuat Database PegawaiMembuat Database Pegawai

Berikan perintah pada prompt Berikan perintah pada prompt mysql:mysql:CREATE DATABASE Pegawai;CREATE DATABASE Pegawai;

mysql> CREATE DATABASE Pegawai;Query OK, 1 row affected (0.09 sec)

mysql>

Page 12: Modul 1

Memilih DatabaseMemilih Database

Berikan perintah:Berikan perintah:USE Pegawai;USE Pegawai;

Nama Database

Page 13: Modul 1

Membuat Tabel PribadiMembuat Tabel Pribadi

Berikan perintah:Berikan perintah:

CREATE TABLE Pribadi (Nip CHAR(5) NOT NULL PRIMARY KEY,Nama VARCHAR(35) NOT NULL,Tgl_lahir DATE,Sex ENUM('P','W'),Alamat VARCHAR(35),Kota VARCHAR(15));

Page 14: Modul 1

Penjelasan Tipe DataPenjelasan Tipe Data

KARAKTERKARAKTER CHARCHAR: Teks dengan maksimal 255 : Teks dengan maksimal 255

karakterkarakter VARCHARVARCHAR: Teks maksimal 255 : Teks maksimal 255

karakter dan bersifat variabelkarakter dan bersifat variabel TEXTTEXT: Teks dengan panjang : Teks dengan panjang

maksimal 65535maksimal 65535

Page 15: Modul 1

Penjelasan Tipe DataPenjelasan Tipe Data

BILANGANBILANGAN

TINYINTTINYINT: Bilangan 1 byte: Bilangan 1 byte SMALLINTSMALLINT: Bilangan 2 byte: Bilangan 2 byte INT INT atauatau INTEGER INTEGER Bilangan 4 byte Bilangan 4 byte BIGINTBIGINT: Bilangan 8 byte: Bilangan 8 byte FLOATFLOAT: Bilangan pecahan (4 byte): Bilangan pecahan (4 byte) DOUBLE DOUBLE atauatau REAL REAL: Bilangan pecahan (8 byte): Bilangan pecahan (8 byte) DECIMAL(M, D)DECIMAL(M, D) atau atau NUMERIC(M, D)NUMERIC(M, D): :

Bilangan pecahanBilangan pecahan

Page 16: Modul 1

Penjelasan Tipe DataPenjelasan Tipe Data

LAIN-LAINLAIN-LAIN

DATEDATE: Tanggal: Tanggal DATETIMEDATETIME: Waktu (tanggal dan jam): Waktu (tanggal dan jam) TIME : TIME : JamJam ENUM(‘nilai1’, ‘nilai2’, …)ENUM(‘nilai1’, ‘nilai2’, …): Nilai : Nilai

enumerasienumerasi BOOLEANBOOLEAN: tipe benar atau salah: tipe benar atau salah

Page 17: Modul 1

Kata TambahanKata Tambahan

NOT NULL : Tidak boleh kosongNOT NULL : Tidak boleh kosong PRIMARY KEY: Kunci primerPRIMARY KEY: Kunci primer AUTO_INCREMENT: Nilai naik secara AUTO_INCREMENT: Nilai naik secara

otomatis tanpa diisiotomatis tanpa diisi

Page 18: Modul 1

Penambahan DataPenambahan Data

Penambahan data dilakukan dengan Penambahan data dilakukan dengan menggunakan pernyataan INSERTmenggunakan pernyataan INSERT

Bentuk dasar :Bentuk dasar :INSERT INTO nama_tabel (nama_field, INSERT INTO nama_tabel (nama_field,

nama_field, …) VALUES (nilai, nilai, …);nama_field, …) VALUES (nilai, nilai, …); Contoh:Contoh:

INSERT INTO Pribadi(Nip, Nama, Tgl_lahir, Sex, Alamat, Kota)INSERT INTO Pribadi(Nip, Nama, Tgl_lahir, Sex, Alamat, Kota)VALUES ('12345', 'A. Hamzah Sianturi', '1965/12/23',VALUES ('12345', 'A. Hamzah Sianturi', '1965/12/23','P', 'Jl. Kudus 1', 'Yogya');'P', 'Jl. Kudus 1', 'Yogya');

Page 19: Modul 1

Melihat Isi TabelMelihat Isi Tabel

Perintah SELECTPerintah SELECT

Bentuk Umum:Bentuk Umum:SELECT * FROM Nama_TabelSELECT * FROM Nama_Tabel

Contoh:Contoh:SELECT * FROM PribadiSELECT * FROM Pribadi

Page 20: Modul 1

Penambahan Data (Lanjutan…)Penambahan Data (Lanjutan…)

Tambahkan data berikut:Tambahkan data berikut:

Untuk data yang kosong, tuliskan NULLUntuk data yang kosong, tuliskan NULL

PriaYogyaJl. Karyacita 9Joned05/05/197812354

PriaYogyaJl. Astina 4ASueb04/07/197112353

WanitaKlatenJl. Kertosono 87Sinta29/04/196912352

PriaSlemanNgampilan 2AEdi Damhudi05/04/197112351

WanitaYogyaJl. Sawo 108Intan01/02/197512350

PriaMagelangKarangwaru I/3Bagus13/05/196612349

WanitaBantulJl. Arumdalu 23Dian Arum14/03/196912348

WanitaSiti Umayani12347

PriaSlemanJl. Masjid 47Udin12/01/197812346

JenisKelamin

KotaAlamatNamaTanggal lahirNIP

Page 21: Modul 1

Penambahan Data dengan Field Penambahan Data dengan Field TertentuTertentu

Contoh tanpa mengisi Tanggal lahir, Contoh tanpa mengisi Tanggal lahir, alamat dan kotaalamat dan kota

INSERT INTO Pribadi(Nip, Nama, Sex)INSERT INTO Pribadi(Nip, Nama, Sex)VALUES ('12355', 'Andini', 'W');VALUES ('12355', 'Andini', 'W');

Page 22: Modul 1

Pengaruh Kunci PrimerPengaruh Kunci Primer

Cobalah berikan pernyataan berikut:Cobalah berikan pernyataan berikut:

INSERT INTO Pribadi(Nip, Nama, Tgl_lahir, Sex, Alamat, INSERT INTO Pribadi(Nip, Nama, Tgl_lahir, Sex, Alamat, Kota)Kota)

VALUES ('12345', ‘Dona Harun', '1978/01/01',VALUES ('12345', ‘Dona Harun', '1978/01/01',‘‘W', 'Jl. Kreasi 77', 'Yogya');W', 'Jl. Kreasi 77', 'Yogya');

Apa yang terjadi? Kenapa?Apa yang terjadi? Kenapa?

Page 23: Modul 1

Pengaruh NOT NULLPengaruh NOT NULL

Cobalah berikan pernyataan berikut:Cobalah berikan pernyataan berikut:

INSERT INTO Pribadi(Nip, Sex)INSERT INTO Pribadi(Nip, Sex)VALUES ('12360', ‘W');VALUES ('12360', ‘W');

Apa yang terjadi? Kenapa?Apa yang terjadi? Kenapa?

Page 24: Modul 1

Pengaruh ENUMPengaruh ENUM

Cobalah perintah berikut:Cobalah perintah berikut:

INSERT INTO Pribadi(Nip, Nama, sex)INSERT INTO Pribadi(Nip, Nama, sex)

VALUES ('12361', 'Edi harahap', 'L');VALUES ('12361', 'Edi harahap', 'L');

Apa yang terjadi? Kenapa?Apa yang terjadi? Kenapa? Cek dengan SELECT; apakah data Cek dengan SELECT; apakah data

tersimpan?tersimpan?

Page 25: Modul 1

Melihat Struktur TabelMelihat Struktur Tabel

Gunakan perintah:Gunakan perintah:DESC nama_tabelDESC nama_tabel

Contoh:Contoh: DESC Pribadi;DESC Pribadi;

+-----------+---------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+-----------+---------------+------+-----+---------+-------+| Nip | char(5) | NO | PRI | | || Nama | varchar(35) | NO | | | || Tgl_lahir | date | YES | | NULL | || Sex | enum('P','W') | YES | | NULL | || Alamat | varchar(35) | YES | | NULL | || kota | varchar(20) | YES | | NULL | |+-----------+---------------+------+-----+---------+-------+6 rows in set (0.16 sec)

Page 26: Modul 1

Mengganti Nama FieldMengganti Nama Field

Perintah yang digunakan adalah Perintah yang digunakan adalah ALTER TABLEALTER TABLE

Contoh:Contoh: ALTER TABLE Pribadi ALTER TABLE Pribadi

CHANGE sex kelamin ENUM('P','W');CHANGE sex kelamin ENUM('P','W');

Cek struktur tabel setelah Anda Cek struktur tabel setelah Anda melakukan perintah di atasmelakukan perintah di atas

Page 27: Modul 1

Mengganti Ukuran/Tipe FieldMengganti Ukuran/Tipe Field

Perintah yang digunakan adalah Perintah yang digunakan adalah ALTER TABLEALTER TABLE

Contoh:Contoh: ALTER TABLE Pribadi ALTER TABLE Pribadi

CHANGE kota kota VARCHAR(20);CHANGE kota kota VARCHAR(20);

Cek struktur tabel setelah Anda Cek struktur tabel setelah Anda melakukan perintah di atasmelakukan perintah di atas

Page 28: Modul 1

Menambahkan DEFAULTMenambahkan DEFAULT

DEFAULT pada struktur tabel DEFAULT pada struktur tabel digunakan untuk memberikan nilai digunakan untuk memberikan nilai bawaan pada suatu field kalau nilai bawaan pada suatu field kalau nilai bersangkutan tidak dimasukkanbersangkutan tidak dimasukkan

Contoh:Contoh:ALTER TABLE Pribadi CHANGE ALTER TABLE Pribadi CHANGE kelamin kelamin ENUM('P','W') kelamin kelamin ENUM('P','W') DEFAULT 'P';DEFAULT 'P';

Page 29: Modul 1

Menambahkan DEFAULTMenambahkan DEFAULT(Lanjutan…)(Lanjutan…)

Sekarang cobalah berikan perintah:Sekarang cobalah berikan perintah:INSERT INTO Pribadi(Nip, Nama)INSERT INTO Pribadi(Nip, Nama)VALUES (‘12370’, ‘Fahmi Idris’);VALUES (‘12370’, ‘Fahmi Idris’);

PERHATIKAN, apa isi field Kelamin PERHATIKAN, apa isi field Kelamin untuk NIP 12370’?untuk NIP 12370’?

Page 30: Modul 1

Pengubahan DataPengubahan Data Perintah yang digunakan adalah UPDATEPerintah yang digunakan adalah UPDATE Bentuk dasar:Bentuk dasar:

UPDATE nama_tabel SET nama_field = nilai, nama_field = UPDATE nama_tabel SET nama_field = nilai, nama_field = nilai, … WHERE nama_field = nilainilai, … WHERE nama_field = nilai

Contoh mengubah Contoh mengubah UdinUdin menjadi menjadi UdinsahUdinsah::

UPDATE Pribadi SET Nama= 'Udinsah' UPDATE Pribadi SET Nama= 'Udinsah' WHERE NIP = '12346';WHERE NIP = '12346';

Ujilah dengan SELECT untuk melihat hasil perubahanUjilah dengan SELECT untuk melihat hasil perubahan

Page 31: Modul 1

Penghapusan DataPenghapusan Data Perintah DELETEPerintah DELETE Bentuk dasar:Bentuk dasar:

DELETE FROM nama_tabel WHERE DELETE FROM nama_tabel WHERE nama_field = nilainama_field = nilai

Contoh:Contoh:DELETE FROM Pribadi DELETE FROM Pribadi WHERE Nip = '12355';WHERE Nip = '12355';

Ujilah dengan SELECT untuk melihat efek Ujilah dengan SELECT untuk melihat efek perintah di atasperintah di atas

Page 32: Modul 1

Penghapusan TabelPenghapusan Tabel

Gunakan DROP TABLEGunakan DROP TABLE Untuk mempraktekkan, buatlah Untuk mempraktekkan, buatlah

sebuah table bernama RIWAYAT, sebuah table bernama RIWAYAT, dengan isi berupa sebuah field dengan isi berupa sebuah field (misalnya Nip bertipe CHAR(5))(misalnya Nip bertipe CHAR(5))

Kemudian, lihatlah daftar tabel Kemudian, lihatlah daftar tabel dengan memberikan perintah:dengan memberikan perintah:SHOW TABLES;SHOW TABLES;

Page 33: Modul 1

Penghapusan TabelPenghapusan Tabel(Lanjutan…)(Lanjutan…)

Berikan perintah:Berikan perintah:DROP TABLE Riwayat;DROP TABLE Riwayat;

Kemudian, lihatlah daftar tabel Kemudian, lihatlah daftar tabel dengan memberikan perintah:dengan memberikan perintah:SHOW TABLES;SHOW TABLES;Apa sudah terhapus?Apa sudah terhapus?

Page 34: Modul 1

Latihan Membuat Tabel BagianLatihan Membuat Tabel Bagian

Buatlah tabel Buatlah tabel BagianBagian dengan struktur dengan struktur seperti berikut:seperti berikut:• Kode_BagKode_Bag, CHAR, 1 karakter, primary key, CHAR, 1 karakter, primary key• Nama_BagNama_Bag, VARCHAR, 20 karakter, harus , VARCHAR, 20 karakter, harus

diisidiisi Isikan data sebagai berikut:Isikan data sebagai berikut:

• 1 untuk EDP1 untuk EDP• 2 untuk Pemasaran2 untuk Pemasaran• 3 untuk Produksi3 untuk Produksi• 4 untuk SDM4 untuk SDM• 5 untuk Akunting5 untuk Akunting

Page 35: Modul 1

Latihan Membuat Tabel PekerjaanLatihan Membuat Tabel Pekerjaan

Buatlah tabel Pekerjaan dengan struktur seperti berikut:• NIP, CHAR, 5 karakter, primary key• Tgl_Masuk, DATE• Kode_Bag, 1 karakter, harus diisi• Gaji, bilangan

Isikan data sebagai berikut:• 12345, 02/02/1992, 3, 2000000• 12346, 02/02/1992, 1, 1500000• 12347, 02/02/1992, 2, 1200000• 12348, 02/02/1992, 4, 1500000• 12349, 02/02/1992, 5, 1200000

Page 36: Modul 1

Latihan Penggunaan Tipe MemoLatihan Penggunaan Tipe Memo

Buatlah tabel bernama Buatlah tabel bernama RiwayatRiwayat Isi Field:Isi Field:

• NIPNIP• Keterangan (bertipe Memo)Keterangan (bertipe Memo)

Isikan data untuk NIP yang tersedia pada tabel Isikan data untuk NIP yang tersedia pada tabel Pribadi (12345 sampai dengan 12354)Pribadi (12345 sampai dengan 12354)

Isikan Keterangan dengan daftar riwayat Isikan Keterangan dengan daftar riwayat pendidikan, misalnya sbb:pendidikan, misalnya sbb:

SD Muhammadiyah I, YogyaSD Muhammadiyah I, YogyaSMP Negeri I, YogyaSMP Negeri I, YogyaSMA Negeri III, SemarangSMA Negeri III, Semarang

Page 37: Modul 1

Latihan GabunganLatihan Gabungan

Masukkan data berikut ke Tabel Masukkan data berikut ke Tabel Pribadi:Pribadi:• NIP: 12390NIP: 12390• Nama: Asti DamayantiNama: Asti Damayanti• Tanggal Lahir: 2 Februari 1983Tanggal Lahir: 2 Februari 1983• Jenis kelamin: WanitaJenis kelamin: Wanita

Ubahlah Tanggal lahir Asti Ubahlah Tanggal lahir Asti Damayanti menjadi 23 Pebruari 1973Damayanti menjadi 23 Pebruari 1973

Cek hasilnyaCek hasilnya

Page 38: Modul 1

Latihan GabunganLatihan Gabungan(Lanjutan…)(Lanjutan…)

Hapuslah record yang berisi data Asti Hapuslah record yang berisi data Asti Damayanti dengan menyebutkan Damayanti dengan menyebutkan namanya (bukan NIP)namanya (bukan NIP)

Ubahlah nama field Ubahlah nama field KeteranganKeterangan pada tabel Riwayat menjadi pada tabel Riwayat menjadi KetKet

Page 39: Modul 1

Latihan Gabungan (Lanjutan…)Latihan Gabungan (Lanjutan…)

Menambahkan Field:Menambahkan Field: ALTER TABLE Pribadi ADD ALTER TABLE Pribadi ADD

Bisa_Bhs_Asing BOOLEAN DEFAULT Bisa_Bhs_Asing BOOLEAN DEFAULT FALSE;FALSE;

Buatlah agar field baru tersebut Buatlah agar field baru tersebut bernilai TRUE untuk NIP=12345, bernilai TRUE untuk NIP=12345, 12347, dan 1235012347, dan 12350