Modul Mysql
-
Upload
ricardo-kharis -
Category
Documents
-
view
27 -
download
0
description
Transcript of Modul Mysql
-
Sistem Basis Data
Prepared by LittleRaditaSTMIK- AUB Surakarta
-
MySQL termasuk ke dalam Relational Database Management System (RDBMS) yang didistribusikan secara gratis di bawah lisensiGPL (General Public License)
MySQL merupakan turunan dari konsepdatabase SQL (Structured Query Languange) untuk pemilihan /seleksi dan pemasukan data yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.
-
MySQL merupakan Database Server yang bersifat :
Open SourceMultiplatformBerbasis database relasional
Bisa dipakai untuk database pribadi atau pada level korporat berskala kecil hingga besarSelain bersifat free, ada juga yang bersifat komersial
-
Overview MySQL(Lanjutan )
Menggunakan SQL untuk mendukung pengaksesan data (query)
Hasil dari permintaan
Klien
Server
Permintaan berupa pernyataan seperti: SELECT * FROM bintang;
-
Keistimewaan MySQL
Portability : berjalan stabil pada berbagai sistem operasi(Windows,Linux, Mac OS, Solaris dsb)Open Source : didistribusikan secara open source (gratis)Multiuser : dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah atau konflikPerformance Tuning : memiliki kecepatan yang baik dalammenangani query sederhana.Column Types : memiliki tipe kolom yang kompleks, seperti : signed/unsigned integer, float, double, char, varchar, blob, time, datetime, timestamp, year, set serta enumCommand dan Functions : memiliki olpertor dan fungsi secarapenuh yang mendukkung perintah SELECT dan WHERE dalamquery
-
Keistimewaan MySQLSecurity : memiliki lapisan sekuritas, seperti level subnetmask, nama host dan izin akses user disertai dengan password enkripsi.Scalability dan Limits : mampu menangani database dalam skalabesar dengan jumlah records lebih dari 50 juta dan 60 ribu tabelserta 5 miliar baris.Connectivity : dapat melakukan koneksi dengan client menggunakan protokol TCP/IP, Unix soket atau Named Pipes.Localisation : dapat mendeteksi pesan kesalah (error code) padaclient dengan menggunakan lebih dari dua puluh bahasa.Interface : memiliki interface terhadap berbagai aplikasi dan bahasapemrograman dengan fungsi API (Application Programming Interface).Clients dan Tools : dilengkapi dengan berbagai tool yang dapatdigunakan untuk administrasi databaseStruktur Tabel : memiliki struktur tabel yang lebih fleksibeldalammenangani ALTER TABLE dibandingkan Oracle atau PostgreSQL
-
SQL = Structured Query LanguageDigunakan untuk mengakses basis data relasionalBersifat standar; bisa dipakai untuk basis data relasional lainnyaPerintah SQL yang biasa digunakan dapatdibagi menjadi DDL dan DML
-
DDLbahasa yg digunakan untuk mendefinisikan data.ex : create, dropDMLbahasa yg digunakan untu memanipulasi data. ex : insert, update, delete Retrieving Data perintah untuk menampilkan data dari database.ex : selectDCL bahasa untuk kontrol pengendalian akses data ke database.ex : grant, revokeDTLbahasa untuk mengelola transaksi di database.ex : commit transaction, rollback transaction
-
DDL = Definition Data LanguageDigunakan untuk kepentingan penciptaan database, tabel, hingga penghapusan database atau tabelContoh:
CREATE DATABASECREATE TABLEDROP TABLEALTER TABLE
-
DML = Data Manipulation LanguageDigunakan untuk memanipulasi dataContoh:
SELECT mengambil dataDELETE menghapus dataINSERT menyisipkan dataUPDATE mengubah data
-
Lakukan instalasi MySQL terlebih duluMySQL memiliki sejumlah tool; salah satu di antaranya adalah:
program mysql, yang dipakai untuk mengakses database dari sisi klienProgram mysqladmin, untuk mengelola MySQL dari sisi administrator sistem
-
Masuk ke prompt DOSKetik perintah:cd c:\ Program Files \MysQL\ MySQL Server 5.0
Berikan perintah cd bin
-
root adalah pemakai dengan wewenang paling tinggi dan digunakan untuk admin sistemPerintah untuk mengubah password root:mysqladmin uroot password rahasia
-
Berikan perintah:mysql uroot p
Ketikkan 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>
-
untuk memulai MySQL pastikan terlebih dahulu daemon MySQL(mysqld) sudah di start.
Steps:Dari folder mysql browse folder bin.Double-click file mysqlddouble-click file mysql
-
Tampilan prompt MySQL setelah authentikasi berhasil
Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 459 to server version: 3.22.20a-log
Type 'help' for help.
mysql>_
keluar dari MySQL
mysql> QUITBye
-
Pembuatan Database dan Tabel
Database: Pegawai
Tabel: PribadiField:-NIP
-Nama
-Tgl_Lahir-Sex-Alamat
-Kota
Tabel: PekerjaanField:-NIP
-Tgl_Masuk-Kode_Bag-Gaji
Tabel: BagianField:-Kode_Bag-Nama_Bag
-
Berikan perintahshow databases;
-
Berikan perintah pada prompt mysql:CREATE DATABASE Pegawai;
mysql> CREATE DATABASE Pegawai;Query OK, 1 row affected (0.09 sec)
mysql>
-
Berikan perintah:USE Pegawai;
Nama Database
-
Berikan perintahDrop database nama_database;
-
Isi dari database = tabelBerikan perintahshow tables;
-
Berikan perintahCreate table nama_tabel (nama_kolomtipe_data(panjang_data tambahan key) Menampilkan struktur tabeldescribe nama_tabel;Menghapus tabeldrop nama_tabel;
-
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));
-
KARAKTERCHAR: Teks dengan maksimal 255 karakterVARCHAR: Teks maksimal 255 karakter dan bersifat variabelTEXT: Teks dengan panjang maksimal 65535
-
BILANGAN
TINYINT: Bilangan 1 byteSMALLINT: Bilangan 2 byteINT atau INTEGER Bilangan 4 byteBIGINT: Bilangan 8 byteFLOAT: Bilangan pecahan (4 byte)DOUBLE atau REAL: Bilangan pecahan (8 byte)DECIMAL(M, D) atau NUMERIC(M, D): Bilangan pecahan
-
LAIN-LAIN
DATE: TanggalDATETIME: Waktu (tanggal dan jam)TIME : JamENUM( nilai1 , nilai2 , ): Nilai enumerasiBOOLEAN: tipe benar atau salah
-
NOT NULL : Tidak boleh kosongPRIMARY KEY: Kunci primerAUTO_INCREMENT: Nilai naik secara otomatis tanpa diisi
-
Penambahan data dilakukan dengan menggunakan pernyataan INSERTBentuk dasar :INSERT INTO nama_tabel (nama_field, nama_field,
) VALUES (nilai, nilai, );Contoh:INSERT INTO Pribadi(Nip, Nama, Tgl_lahir, Sex, Alamat, Kota)VALUES ('12345', 'A. Hamzah Sianturi', '1965/12/23','P', 'Jl. Kudus 1', 'Yogya');
-
Perintah SELECT
Bentuk Umum:SELECT * FROM Nama_Tabel
Contoh:SELECT * FROM Pribadi
-
Penambahan Data (Lanjutan )Tambahkan data berikut:
Untuk data yang kosong, tuliskan NULLInsert into pribadi values ( 12346 , Udin , 1978/01/12 , P , Jl.Masjid 47 , Sleman );
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
-
Penambahan Data dengan Field Tertentu
Contoh tanpa mengisi Tanggal lahir, alamat dan kota
INSERT INTO Pribadi(Nip, Nama, Sex)VALUES ('12355', 'Andini', 'W');
-
Cobalah berikan pernyataan berikut:
INSERT INTO Pribadi(Nip, Nama, Tgl_lahir, Sex, Alamat, Kota)VALUES ('12345', Dona Harun', '1978/01/01',W', 'Jl. Kreasi 77', 'Yogya');
Apa yang terjadi? Kenapa?
-
Cobalah berikan pernyataan berikut:
INSERT INTO Pribadi(Nip, Sex)VALUES ('12360', W');
Apa yang terjadi? Kenapa?
-
Cobalah perintah berikut:
INSERT INTO Pribadi(Nip, Nama, sex)VALUES ('12361', 'Edi harahap', 'L');
Apa yang terjadi? Kenapa?Cek dengan SELECT; apakah data tersimpan?
-
Gunakan perintah:DESC nama_tabelContoh: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)
-
Perintah yang digunakan adalah ALTER TABLEContoh:ALTER TABLE Pribadi CHANGE sex kelamin ENUM('P','W');
Cek struktur tabel setelah Anda melakukan perintah di atas
-
Perintah yang digunakan adalah ALTER TABLEContoh:ALTER TABLE Pribadi CHANGE kota kota VARCHAR(20);
Cek struktur tabel setelah Anda melakukan perintah di atas
-
DEFAULT pada struktur tabel digunakan untuk memberikan nilai bawaan pada suatu field kalau nilai bersangkutan tidak dimasukkanContoh:ALTER TABLE Pribadi CHANGE kelamin kelamin ENUM('P','W') DEFAULT 'P';
-
Menambahkan DEFAULT(Lanjutan )
Sekarang cobalah berikan perintah:INSERT INTO Pribadi(Nip, Nama)VALUES ( 12370 , Fahmi Idris );
PERHATIKAN, apa isi field Kelamin untuk NIP 12370 ?
-
Perintah yang digunakan adalah UPDATEBentuk dasar:
UPDATE nama_tabel SET nama_field = nilai, nama_field = nilai, WHERE nama_field = nilai
Contoh mengubah Udin menjadi Udinsah:
UPDATE Pribadi SET Nama= 'Udinsah' WHERE NIP = '12346';
Ujilah dengan SELECT untuk melihat hasil perubahan
-
Perintah DELETEBentuk dasar:DELETE FROM nama_tabel WHERE nama_field = nilai
Contoh:DELETE FROM Pribadi WHERE Nip = '12355';
Ujilah dengan SELECT untuk melihat efek perintah di atas
-
Gunakan DROP TABLEUntuk mempraktekkan, buatlah sebuah table bernama RIWAYAT, dengan isi berupa sebuah field (misalnya Nip bertipe CHAR(5))Kemudian, lihatlah daftar tabel dengan memberikan perintah:SHOW TABLES;
-
Penghapusan Tabel(Lanjutan )
Berikan perintah:DROP TABLE Riwayat;Kemudian, lihatlah daftar tabel dengan memberikan perintah:SHOW TABLES;Apa sudah terhapus?
-
Buatlah tabel Bagian dengan struktur seperti berikut:
Kode_Bag, CHAR, 1 karakter, primary keyNama_Bag, VARCHAR, 20 karakter, harus diisi
Isikan data sebagai berikut:1 untuk EDP2 untuk Pemasaran3 untuk Produksi4 untuk SDM5 untuk Akunting
-
Latihan Membuat Tabel PekerjaanBuatlah tabel Pekerjaan dengan struktur seperti berikut:
NIP, CHAR, 5 karakter, primary keyTgl_Masuk, DATEKode_Bag, 1 karakter, harus diisiGaji, bilangan
Isikan data sebagai berikut:12345, 02/02/1992, 3, 2juta12346, 02/02/1992, 1, 1,5juta12347, 02/02/1992, 2, 1,2juta12348, 02/02/1992, 4, 1,5juta12349, 02/02/1992, 5, 1,2jutaLengkapi sendiri sampai NIP 12354
-
Latihan Penggunaan Tipe MemoBuatlah tabel bernama RiwayatIsi Field:
NIPKeterangan (bertipe Memo)
Isikan data untuk NIP yang tersedia pada tabel Pribadi (12345 sampai dengan 12354)Isikan Keterangan dengan daftar riwayat pendidikan, misalnya sbb:
SD Muhammadiyah I, YogyaSMP Negeri I, YogyaSMA Negeri III, Semarang
-
Masukkan data berikut ke Tabel Pribadi:NIP: 12390Nama: Asti DamayantiTanggal Lahir: 2 Februari 1983Jenis kelamin: Wanita
Ubahlah Tanggal lahir Asti Damayanti menjadi 23 Pebruari 1973Cek hasilnya
-
Latihan Gabungan(Lanjutan )
Hapuslah record yang berisi data Asti Damayanti dengan menyebutkan namanya (bukan NIP)Ubahlah nama field Keterangan pada tabel Riwayat menjadi Ket
-
Menambahkan Field:ALTER TABLE Pribadi ADD Bisa_Bhs_Asing BOOLEAN DEFAULT FALSE;Buatlah agar field baru tersebut bernilai TRUE untuk NIP=12345, 12347, dan 12350