MODUL PENGENALAN MYSQL
SMK MAHADHIKA 4 TEKNIK KOMPUTER DAN JARINGAN DISUSUN OLEH: UCU SURYADI, S.KOM
Pengenalan Database, DBMS dan RDBMS Basis data (atau database) adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer
untuk
memperoleh
informasi
dari
basis
data
tersebut
(http://id.wikipedia.org/wiki/Database). Database digunakan untuk menyimpan informasi atau data yang terintegrasi dengan baik di dalam komputer. Untuk mengelola database diperlukan suatu perangkat lunak yang disebut DBMS (Database Management System). DBMS merupakan suatu sistem perangkat lunak yang memungkinkan user (pengguna) untuk membuat, memelihara, mengontrol, dan mengakses database secara praktis dan efisien. Dengan DBMS, user akan lebih mudah mengontrol dan memanipulasi data yang ada. Sedangkan RDBMS atau Relationship Database Management System merupakan salah satu jenis DBMS yang mendukung adanya relationship atau hubungan antar tabel. Di samping RDBMS, terdapat jenis DBMS lain, misalnya Hierarchy DBMS, Object Oriented DBMS, dsb. Beberapa software atau perangkat lunak DBMS yang sering digunakan dalam aplikasi program antara lain : -
DB2 - http://www-306.ibm.com/software/data/db2/ Microsoft SQL Server - http://www.microsoft.com/sql/ Oracle - http://www.oracle.com Sybase - http://www.sybase.com/ Interbase - http://www.borland.com/interbase Teradata - http://www.teradata.com/ Firebird - http://www.firebirdsql.org/ MySQL – http://www.mysql.com PostgreSQL - http://www.postgresql.org/
Beberapa Istilah Database
Table Sebuah tabel merupakan kumpulan data (nilai) yang diorganisasikan ke dalam baris (record) dan kolom (field). Masing-masing kolom memiliki nama yang spesifik dan unik. Field Field merupakan kolom dari sebuah table. Field memiliki ukuran type data tertentu yang menentukan bagaimana data nantinya tersimpan. Record Field merupakan sebuah kumpulan nilai yang saling terkait. Key Key merupakan suatu field yang dapat dijadikan kunci dalam operasi tabel. Dalam konsep database, key memiliki banyak jenis diantaranya Primary Key, Foreign Key, Composite Key, dll. SQL SQL atau Structured Query Language merupakan suatu bahasa (language) yang digunakan untuk mengakses database. SQL sering disebut juga sebagai query. Hierarki Database
Dalam konsep database, urutan atau hierarki database sangatlah penting. Urutan atau hierarki database digambarkan dalam gambar sbb :
DBMS
Database
Tabel
Tabel
Database
Tabel
Field & Record
Database
Tabel
Tabel
MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis di bawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL. Tidak seperti PHP atau Apache yang merupakan software yang dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia yaitu MySQL AB. MySQL AB memegang penuh hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan Michael "Monty" Widenius. MySQL dapat didownload di situs resminya, http://www.mysql.com. Fitur-fitur MySQL antara lain : 1.
Relational Database System. Seperti halnya software database lain yang ada di pasaran, MySQL termasuk RDBMS.
2. Arsitektur Client-Server. MySQL memiliki arsitektur client-server dimana server database MySQL terinstal di server. Client MySQL dapat berada di komputer yang sama dengan server, dan dapat juga di komputer lain yang berkomunikasi dengan server melalui jaringan bahkan internet. 3. Mengenal perintah SQL standar.
4. 5. 6. 7.
8. 9. 10.
SQL (Structured Query Language) merupakan suatu bahasa standar yang berlaku di hampir semua software database. MySQL mendukung SQL versi SQL:2003. Mendukung Sub Select. Mulai versi 4.1 MySQL telah mendukung select dalam select (sub select). Mendukung Views. MySQL mendukung views sejak versi 5.0 Mendukung Stored Prosedured (SP). MySQL mendukung SP sejak versi 5.0 Mendukung Triggers. MySQL mendukung trigger pada versi 5.0 namun masih terbatas. Pengembang MySQL berjanji akan meningkatkan kemampuan trigger pada versi 5.1. Mendukung replication. Mendukung transaksi. Mendukung foreign key.
PRAKTIKUM I Perintah DDL DDL = Definition Data Language Digunakan untuk kepentingan penciptaan database, tabel, hingga penghapusan database atau tabel Contoh: 1. 2. 3. 4.
CREATE DATABASE CREATE TABLE DROP TABLE ALTER TABLE
Perintah DML DML = Data Manipulation Language Perintah DML pada MySQL digunakan untuk manipulasi data. Contoh: 1. 2. 3. 4.
SELECT – mengambil data DELETE – menghapus data INSERT – menyisipkan data UPDATE – mengubah data
TIPE DATA KARAKTER CHAR VARCHAR variabel TEXT
: Teks dengan maksimal 255 karakter : Teks maksimal 255 karakter dan bersifat : Teks dengan panjang maksimal 65535
BILANGAN TINYINT SMALLINT INT atau INTEGER BIGINT FLOAT DOUBLE atau REAL DECIMAL(M, D) atau NUMERIC(M, D)
: Bilangan 1 byte : Bilangan 2 byte : Bilangan 4 byte : Bilangan 8 byte : Bilangan pecahan (4 byte) : Bilangan pecahan (8 byte) : Bilangan pecahan
LAIN-LAIN DATE DATETIME TIME NUM(‘nilai1’, ‘nilai2’, …) BOOLEAN
: Tanggal : Waktu (tanggal dan jam) : Jam : Nilai enumerasi : tipe benar atau salah
Mengoperasikan MySQL Adapun pengoperasian MySQL ada 2 cara, yaitu : 1. Menggunakan Command Line Interface (CLI) – Contohnya command prompt pada windows, terminal pada linux & unix. 2. Menggunakan Tool WYSIWYG (What you see is what you get) – Contohnya seperti : XAMPP, MySQL-Front, SQLYOG, PHPMYADMIN, DBDESIGNER,dll. Pada modul ini terlebih dahulu kita akan mempelajari pengoperasian MySQL dengan cara menggunakan Command Line Interface (CLI) menggunakan command prompt yang sudah ada pada system operasi Windows. Untuk Mysql kita akan menggunakan XAMPP, kenapa kita gunakan xampp? Karena xampp merupakan program yang sudah include Mysql Server,Webserver, Tools manipulasi database basis web seperti PHPMYADMIN. Masuk ke program klient MySQL Berikan perintah: mysql –u root tekan Enter
Pembuatan Database dan Tabel Berikut adalah diagram database dan Tabel dalam database Database : Pegawai
Tabel : pribadi Field: - NIP - Nama - Tgl_Lahi r - Sex - Alamat
Tabel:pekerjaan Field: - NIP - Tgl_Masuk - Kode_Bag - Gaji
Tabel: bagian Field: - Kode_Bag - Nama_Bag
1. Membuat database pegawai Berikan perintah pada prompt mysql: CREATE DATABASE pegawai;
Melihat hasil database yang sudah kita buat : SHOW DATABASES;
Memilih database yang akan kita gunakan : USE pegawai;
Membuat tabel pribadi dalam database pegawai : 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));
PRAKTIKUM II DDL (Definition Data Language)
DDL digunakan untuk membangun kerangka database atau mendefinisikan database dan tabel, perintah yang digunakan, yaitu CREATE, ALTER dan DROP. 1. Mengunakan Perintah CREATE. Agar supaya memudahkan dalam mempelajar mengenai DDL dengan mudah, sebaiknya kita coba untuk membuat databasenya, misalnya kita mengambil kasus disebuah kantor, misalnya mengenai data pribadi pegawai. Berdasarkan kasus ini kita buat database pegawai. CREATE DATABASE pegawai;
Kemudia Aktifkan dengan perintah berikut: USE pegawai;
Setelah menggunakan perintah diatas, kita sudah berada dalam database pegawai. Setelah itu kita harus membuat tabel baru didalam database pegawai. Memahami Perintah Pembuatan Tabel Secarah Mudah. Dalam pembuatan tabel sebenarnya sangat mudah, kita harus sudah mengetahui tabel apa yang akan dibuat, kemudian gambaran data yang akan disimpan. Sintaks dasar untuk pembuatan tabel adalah: CREATE TABLE [IF NOT EXISTS] nama_tabel (kolom_a tipe(panjang), kolom_b tipe(panjang), ...) Parameter IF NOT EXISTS untuk memeriksa tabel jika tidak ada atau belum dibuat.
Membuat Tabel Baru. Sekarang kita akan mengimplementasikan sintaks diatas untuk pembuatan tabel. Dari kasus diatas kita akan membuat tabel pribadi. Tabel pribadi. Tabel pribadi biasanya dipakai untuk menyimpan data pegawai, didalam tabel pribadi ini tentunya ada field atau atribut bagian. Strukturnya contoh seperti ini. Field Name Data Type N INT i N Varchar p a Tgl_Lahir Date/Time mS ENUM(“P”,”W”) ae Ala Varchar x ma K Varchar to
File Size 5 50
35
Description Nomor Induk Pegawai Nama Pegawai Tanggal Lahir Jenis Kelamin Alamat
15
Kota
t diatas kita bisa membuat perintah SQL sebagai Dari tabel berikut: a CREATE TABLE pribadi (Nip INT(5) NOT NULL PRIMARY KEY,Nama VARCHAR(35) NOT NULL,Tgl_lahir DATE,Sex ENUM('P','W'),Alamat VARCHAR(35),Kota VARCHAR(15));
PRIMARY KEY adalah Kunci Utama, dalam setiap tabel harus ada minimal satu kolom yang dijadikan sebagai PRIMARY KEY. NOT NULL artinya setiap kolom tidak boleh kosong, sedangkan jika diisinkan untuk dikosongkan dapat menggunakan parameter NULL. Setelah selesai, kita dapat melihat tabel yang kita buat dengan perintah SHOW TABLES. SHOW TABLES;
Dan untuk melihat deskripsi sebuah tabel bisa menggunakan sintaks
DESCRIBE nama_tabel;
2. Menggunakan Perintah ALTER Didalam MySQL, ALTER berfungsi untuk mengubah struktur tabel yang telah dibuat. sehingga dengan penggunaan perintah ALTER ini maka kita dapat mengubah kekurangan atau kesalahan pada saat kita membuat tabel. Sintaksnya adalah sebagai berikut : ALTER TABEL nama_tabel [ spesifikasi perubahan ] Parameter [ spesifikasi perubahan ] adalah pilihan yang digunakan untuk mengubah struktur tabel yaitu CHANGE, ADD, DROP. Menambah Kolom Baru Untuk menambah kolom baru dalam tabel, parameter yang digunakan adalah ADD. Sintaksnya adalah sebagai berikut. ALTER TABLE nama_tabel ADD kolom_baru tipe(panjang) [FIRST | AFTER kolom_lama] Ada dua opsi pada sintak diatas. FIRST artinya kolom yang baru akan ditambahkan pada urutan pertama. AFTER artinya kita meletakkan kolom yang baru setelah kolom yang ditunjuk. Misalnya kita ingin menambah kolom baru bernama Status_Kawin dengan posisi setelah kolom/field Sex dengan tipe VARCHAR(10) pada tabel pribadi, perintahnya adalah sebagai berikut: ALTER TABLE pribadi ADD Status_Kawin VARCHAR(10) AFTER Sex;
Untuk melihat hasil gunakan parameter DESCRIBE
Mengubah Nama Kolom Apabila kita ingin melakukan perubahan terhadap nama kolom yang telah selesai dibuat, kita dapat menggunakan paramter CHANGE. Sintaknya sebagai berikut: ALTER TABEL nama_tabel CHANGE kolom_lama kolom_baru tipe (panjang) Contohnya kita ingin mengubah kolom Alamat menjadi Tempat_Tinggal pada tabel pribadi, maka perintahnya sebagai berikut. ALTER TABLE pribadi CHANGE Alamat Tempat_Tinggal TEXT(20);
Kita dapat melihat perubahannya dengan menggunakan perintah DESCRIBE.
Mengubah Nama Tabel Apabila ternyata kita ingin mengubah nama tabel yang kita buat, maka caranya dengan menggunakan parameter RENAME. Sintaknya sebagai berikut : ALTER TABLE nama_lama RENAME [TO] nama_baru Misalnya kita ingin mengganti tabel pribadi menjadi tabel data_pribadi, maka perintahnya sebagai berikut. ALTER TABLE pribadi RENAME TO data_pribadi;
Kita dapat melihat perubahannya dengan menggunakan perintah SHOW TABLES.
Menggunakan Perintah DROP Perintah DROP fungsinya untuk menghapus atau menghilangkan komponen pada tabel yang ada. baik menghilangkan primary key, kolom, tabel, index pada kolom. Menghilangkan PRIMARY KEY, Sintaksnya adalah sebagai berikut: ALTER TABLE nama_tabel DROP PRIMARY KEY;
Menghapus Kolom Tabel, Sintaksnya adalah sebagai berikut:
ALTER TABLE nama_tabel DROP nama_kolom
PRAKTIKUM III DML (Data Manipulation Language) DML berfungsi untuk memanipulasi data dalam database yang telah dibuat. Perintah- perintah yang digunakan diantaranya : 1. 2. 3. 4.
INSERT, menyisipkan atau menambahkan data baru kedalam tabel SELECT, mengambil atau menampilkan data dari tabel. UPDATE, memperbaharui data yang lama ke data yang baru. DELETE, menghapus data dalam tabel.
Sebelum kita lanjut dengan pengunaan perintah - perintah DML sebaiknya kita buat dulu database yang akan digunakan untuk latihan. Kita gunakan saja database PENGGAJIAN, anda dapat melihatnya pada belajar perintah DDL. 1. Perintah INSERT Insert berfungsi untuk memasukkan atau menyimpan data dari luar ke sistem dalam database. Ada beberapa cara dalam memasukkan data yaitu dengan menyamakan kolom dan data, menyebutkan kolom, tanpa menyebutkan kolom, memasukkan hanya sebagai pada kolom. Menyamakan Kolom dan Data, perintahnya sebagai berikut: INSERT INTO nama_tabel SET kolom_pertama = 'data_kolom_pertama', kolom_kedua = 'data_kolom_kedua', kolom_terakhir = 'data kolom terakhir' Apabila kita akan memasukkan data pada tabel pribadi. Maka perintahnya sebagai berikut: INSERT INTO pribadi SET Nip='12345', Nama='Riska', Tgl_Lahir='1987/05/20', Sex='P’, Alamat='Karing-karing', Kota=’Bau-Bau’;
Menyebutkan Kolom, perintahnya sebagai berikut: INSERT INTO nama_tabel (kolom_pertama, kolom_kedua, kolom_terakhir) VALUES (data_kolom_pertama, data_kolom_kedua, data_kolom_terakhir); Apabila kita akan memasukkan data pada tabel PEGAWAI. Maka perintahnya sebagai berikut:
INSERT INTO pribadi(Nip, Nama, Tgl_lahir, Sex, Alamat, Kota) VALUES ('12345', 'M. Roni Sianturi', '1965/12/23', 'P', 'Jl. Sijawangkati 1', 'Bau-Bau');
Tanpa Menyebutkan Kolom INSERT INTO nama_tabel VALUES (data_kolom_pertama, data_kolom_kedua, data_kolom_terakhir); Apabila kita akan memasukkan data pada tabel pribadi. Maka perintahnya sebagai berikut: INSERT INTO pribadi VALUES ('34532', 'M. Fendi Kurniawan', '1987/05/20', 'P', 'Jl. Murhum 54', 'Bau-Bau');
3. Perintah SELECT Perintah ini digunakan untuk menyeleksi atau memilih atau menampilkan datadata yang ada dalam tabel. baik menampilkan semua kolom, sebagian kolom, serta berdasarkan kondisi. Menampilkan Semua Kolom, Sintaksnya adalah sebagai berikut. SELECT kolom_pertama, kolom_kedua, ... FROM nama_tabel Apabila kita akam melihat isi dari tabel pribadi dengan menampilkan semua kolom, maka perintahnya adalah sebagai berikut: SELECT Nip, Nama, Tgl_Lahir, Sex,Alamat,Kota FROM pribadi;
Sebenarnya kita bisa hanya menggunakan tanda (*) untuk menampilkan semua kolom, perintahnya sebagai berikut: SELECT * FROM pribadi;
Menampilkan Sebagian Kolom misalnya hanya nama saja, Sintaksnya adalah sebagai berikut. SELECT Nama FROM pribadi;
Menampilkan data dengan kondisi. SELECT [* | kolom_pertama, . . .] FROM nama_tabel WHERE kondisi Contoh. SELECT * FROM pribadi WHERE Nama = 'Riska';
4. Perintah UPDATE
Update fungsinya untuk memperbaharui data lama menjadi data yang baru, dalam penggunaanya harus disertai dengan klausa WHERE, Sintaksnya adalah sebagai berikut. UPDATE nama_tabel SET kolom_pertama = 'data_kolom_pertama', kolom_kedua = 'data_kolom_kedua', kolom_terakhir = 'data_kolom_terakhir', WHERE kondisi Contohnya pada tabel pribadi, pegawai dengan nama Reni pada field Kota belum ada isi. kita akan mengupdatenya sehinga perintahnya sebagai berikut. UPDATE pribadi SET Alamat='Bau-Bau' WHERE Nama='Reni';
Catatan : Pengunaan perintah UPDATE tanpa klausa WHERE mengakibatkan semua data dalam satu kolom akan diubah. 5. Perintah DELETE. Perintah ini digunakan untuk menghapus atau menghilangkan baris data (record) dari tabel. Sintaksnya sebagai berikut DELETE FROM nama_tabel WHERE kondisi Contohnya, kita akam menghapus tabel data pada tabel pribadi. Maka fungsinya adalah sebagai berikut DELET FROM pribadi WHERE Nama='Riska';
Catatan : Apabila tidak menggunakan klausa WHERE maka akan menyebabkan semua record dalam tabel terhapus.
Daftar pustaka: a. Ilmukomputer.com b. Achmatim.net