Anda di halaman 1dari 27

TUGAS

MATA KULIAH BASIS DATA


SQL DAN MYSQL

Disusun oleh:
Dina Rosidah (18032010051)
Anastasya Nabila Sari (18032010078)
Dewi Nuraini (18032010091)
Paralel : B

PROGRAM STUDI TEKNIK INDUSTRI


FAKULTAS TEKNIK
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
JAWA TIMUR
2019
SQL DAN MySQL

A. SQL

Pengertian
SQL Server adalah sistem manajemen database relasional (RDBMS) yang dirancang
untuk aplikasi dengan arsitektur client/server. Istilah client, server, dan client/server dapat
digunakan untuk merujuk kepada konsep yang sangat umum atau hal yang spesifik dari
perangkat keras atau perangkat lunak. Pada level yang sangat umum, sebuah client adalah
setiap komponen dari sebuah sistem yang meminta layanan atau sumber daya (resource) dari
komponen sistem lainnya. Sedangkan sebuah server adaah setiap komponen sistem yang
menyediakan layanan atau sumber daya ke komponen sistem lainnya.

Sistem Client /Server (Marcus Teddy cs 2004) Sistem client/server adalah dirancang
untuk memisah layanan basisdata dari client, dengan penghubungnya menggunakan jalur
komunikasi data. Layanan basisdata diimplementasikan pada sebuah komputer yang berdaya
guna, yang memungkinkan manajeman tersentralisasi, keamanan, dan berbagai sumber daya.
Oleh karena itu, server dalam client/server adalah basisdata dan layanannya. Aplikasi-aplikasi
client diimplementasikan pada berbagai flatform, menggunakan berbagai kakas
pemrograman.

Tampilan Microsoft SQL Server 2000


SQL Server adalah server basisdata yang secara fungsional adalah proses atau aplikasi
yang menyediakan layanan basisdata. Client berinteraksi dengan layanan basisdata melalui
antar muka komunikasi tertentu yang bertujuan untuk pengendalian dan keamanan. Client
tidak mempunya akses langsung kedata, tetapi selalu berkomunikasi dengan server basisdata.
SQL Server menggunakan tipe dari database yang disebut database relasional. Database
relasional adalah database yang digunakan sebuah data untuk mengatur atau
mengorganisasikan kedalam tabel. Tabel-tabel adalah alat bantu untuk mengatur atau
mengelompokan data mengenai subyek yang sama dan mengandung informasi dan kolom
dan baris. Tabel-tabel saling berhubungan dengan mesin database ketika dibutuhkan.
SQL Server mendukung beberapa tipe data yang berbeda, termasuk untuk karakter, angga,
tanggal (datetime) dan uang (money), SQL Server digunakan untuk menggambarkan model
dan implementasi pada database.
Standarisasi
Standarisasi SQL dimulai pada tahun 1986, ditandai dengan dikeluarkannya standar
SQL oleh ANSI. Standar ini sering disebut dengan SQL86.Standar tersebut kemudian
diperbaiki pada tahun 1989 kemudian diperbaiki lagi pada tahun 1992. Versi terakhir dikenal
dengan SQL92. Pada tahun 1999 dikeluarkan standar baru yaitu SQL99 atau disebut juga
SQL99, akan tetapi kebanyakan implementasi mereferensi pada SQL92.
Saat ini sebenarnya tidak ada server basis data yang 100% mendukung SQL92. Hal
ini disebabkan masing-masing server memiliki dialek masing-masing.
Pemakaian dasar
Secara umum, SQL terdiri dari dua bahasa, yaitu Data Definition Language (DDL)
dan Data Manipulation Language (DML). Implementasi DDL dan DML berbeda untuk tiap
sistem manajemen basis data (SMBD), namun secara umum implementasi tiap bahasa ini
memiliki bentuk standar yang ditetapkan ANSI.
Tujuan dari pemakaian SQl dalam menyelesaikan tugas-tugas yang
berkaitan dengan database, diantaranya :
- Memanggil data dari satu table atau lebih
- Memanipulasi data
- Mendapatkan ringkasan informasi
- Membuat, memodifikasi atau menghapus table
- Membuat atau menghapus index.
Fungsi (Function) SQL
1. COUNT()
COUNT merupakan perintah SQL yang berfungsi untuk menghitung record (baris) pada
suatu tabel atau lebih.
 Contoh penggunaan:
SELECT COUNT(*) AS tot_record FROM tbl_barang;

2. SUM()
SUM merupakan Syntak SQL yang berfungsi untuk menjumlahkan field yang bernilai angka
(INTEGER). SUM meiliki pola hampir sama dengan COUNT.
 Adapun contoh penggunaannya sebagai berikut:
SELECT SUM(barang_harga) AS tot_harga FROM tbl_barang;
Perintah SQL diatas akan menghitung total harga dari field barang_harga dari tabel barang.

3. MIN()
MIN merupakan Syntak SQL yang berfungsi untuk menyeleksi nilai terendah (minimum)
dari field yang bernilai angka (INTEGER). MIN meiliki pola hampir sama dengan COUNT
ataupun SUM.
 Adapun contoh penggunaannya sebagai berikut:
SELECT MIN(barang_harga) AS tot_harga FROM tbl_barang;
Perintah SQL diatas akan mencari nilai terendah dari field barang_harga dari tabel barang.
4. MAX()
Kebalikan dari MIN yaitu MAX. Jika MIN menyeleksi nilai terendah dari field yang bernilai
angka (INTEGER). Sedangkan MAX menyeleksi nilai tertinggi dari field yang bernilai angka
(INTEGER).
 Adapun contoh penggunaannya sebagai berikut:
SELECT MAX(barang_harga) AS tot_harga FROM tbl_barang;
Perintah SQL diatas akan mencari nilai tertinggi dari field barang_harga dari tabel barang.

5. AVG()
Lain halnya dengan MIN dan MAX yaitu AVG. Jika MIN menyeleksi nilai terendah dari field
yang bernilai angka (INTEGER) dan MAX menyeleksi nilai tertinggi dari field yang bernilai
angka (INTEGER), sedangkan AVG akan mengkalkulasi nilai rata-rata dari field yang
bernilai angkan (INTEGER).
 Adapun contoh penggunaannya sebagai berikut:
SELECT AVG(barang_harga) AS tot_harga FROM tbl_barang;
Perintah SQL diatas akan mengkalkulasi nilai rata-rata (average) dari field barang_harga dari
tabel barang.

6. NOW()
NOW merupakan waktu sekarang yang diambil dari server. NOW memiliki format yyyy-
MM-dd H:i:s. Anda bisa menggunakan fungsi NOW untuk mengambil waktu sekarang jika
Anda membutuhkannya.
 Adapapun contoh penggunaanya sebagai berikut:
SELECT NOW() AS waktu_sekarang;
Perintah SQL diatas akan menampilkan waktu sekarang degan nama alias waktu sekarang.

7. DAY()
DAY merupakan perintah SQL yang berfungsi untuk mengambil hari pada field bertipe data
DATE atau DATETIME.
 Contoh:
SELECT DAY(jual_tanggal) AS hari FROM tbl_jual;
Perintah SQL diatas akan menampilkan hari dari field jual_tanggal pada tabel tbl_jual dengan
nama alias hari.

8. CURDATE()
CURDATE merupakan peritah SQL untuk mengambil tanggal sekarang dari server. Berbeda
dengan NOW, CURDATE memiliki format yyyy-MM-dd. CURDATE sangat bermanfaat
dalam pembuatan suatu aplikasi, misalnya anda ingin menampilkan data tertentu berdasarkan
tanggal sekarang. Anda dapat menggunakan CURDATE untuk melakukan hal itu.
 Adapun contoh penggunaannya sebagai berikut:
SELECT CURDATE() AS tanggal_sekarang;
9. YEAR()
YEAR merupakan perintah SQL yang berfungsi untuk menampilkan tahun pada field yang
bertipe DATE atau DATETIME.
 Contoh:
SELECT YEAR(jual_tanggal) AS thn_jual FROM tbl_jual;
Perintah SQL diatas akan menampilkan tahun pada field jual_tanggal dengan nama
alias thn_jual data tabel tbl_jual.

10. DATE_FORMAT()
DATE_FORMAT merupakan syntax SQL yang berfungsi untuk memformat tanggal secara
customize.
 Contoh:
SELECT DATE_FORMAT(jual_tanggal,'%d %M %Y') AS tanggal FROM tbl_jual;

11. DATE()
DATE merupakan syntax SQL yang berfungsi untuk mengambil tanggal dari field bertipe
data DATETIME.
 Contoh:
SELECT DATE(jual_tanggal) AS tgl_jual FROM tbl_jual;
Perintah SQL diatas akan menampilkan tanggal jual dari tabel tbl_jual dengan format yyyy-
MM-dd. Fungsi DATE hanya akan menampilkan tanggal dari field jual_tanggal yang bertipe
DATETIME

SQL dapat digunakan dengan 2 cara :


1. Interaktif SQL (SQL Interaksi)
Memasukkan sebuah pernyataan SQL melalui terminal / microkomputer dan langsung
diproses atau diinteprestasikan, hasilnya bisa dilihat secara langsung.
2. Embedded SQL (SQL Sisipan)
Dengan menyisipkan pernyataan SQL ke dalam sebuah program yang ditulis dengan bahasa
pemrograman lain. Hasil pernyataan SQL tidak dapat dilihat langsung oleh pemakai, tapi
diproses oleh program lain.
Elemen Dasar SQL dan Contohnya
Elemen Dasar SQL terdiri dari pernyataan, nama, tipe data, konstanta, ekspresi dan fungsi
bawaan disini kita hanya membahas pernyataan yaitu :
1) CREATE : menciptakan table,indeks
- Membuat Database
CREATE DATABASE NAMA_DATABASE
- Membuat Table
CREATE TABLE NAMA_TABEL(NAMA_KOLOM TIPE_DATA(PANJANG_DATA))
2) COMMIT : mengakhiri sebuah eksekusu transaksi
BENTUK UMUM :
[ Statement ];
COMMIT;

CONTOHNYA :
INSERT INTO departements
VALUES (290,'Corporate Tax',NULL,1700)
COMMIT;

3) ALTER : mengubah struktur tabel


- Merubah Nama Tabel
ALTER TABLE NAMA_TABEL RENAME NAMA_TABEL_BARU
- Menambah Kolom
ALTER TABLE NAMA_TABLE NAMA_KOLOM TIPE_DATA(PANJANG_DATA)
- Mengganti Nama Kolom
ALTER TABLE NAMA_TABEL CHANGE KOLOM_LAMA KOLOM_BARU TIPE_DATA(PANJANG_DATA)

- Menghapus Kolom
ALTER TABLE NAMA_TABLE DROP NAMA_KOLOM

4) DELETE : menghapus baris pada table


- Menghapus Data pada Tabel
DELETE FROM NAMA_TABEL WHERE NAMA_KOLOM = DATA_YANG_AKAN_DIHAPUS

5) DROP : menghapus table,indeks


- Menghapus Database
DROP DATABASE NAMA_DATABASE
- Menghapus Tabel
DROP TABLE NAMA_TABEL

6) GRANT : menugaskan hak terhadap basis data kepada pengguna atau group
pengguna
BENTUK UMUM :
GRANT [akses / privileges]
ON [table]
TO [user];
CONTOH NYA :
GRANT SELECT
ON CORPDATA.EMP
TO PULASKI ;

7) INSERT : menambahkan sebuah baris pada table


- Menambah Data ke Tabel pada Semua Kolom
INSERT INTO NAMA_TABEL VALUES(ISI_DATA)
- Menambah Data ke Tabel pada Kolom Tertentu
INSERT INTO NAMA_TABEL(NAMA_KOLOM) VALUES(ISI_DATA)

8) REVOKE : membatalkan hak terhadap basis data


BENTUK UMUM :
GRANT [akses / privileges]
ON [table]
FROM [user] ;

CONTOHNYA :
REVOKE SELECT
ON TABLE CORPDATA
FROM USER01;

9) ROLLBACK : mengembalikan ke dalam bentuk semula sekiranya suatu transaksi gagal


dilaksanakan.
BENTUK UMUM :
[ Statement ]
ROLLBACK;

CONTOHNYA :
DELETE FROM copy_emp;
ROLLBACK;

10) SELECT : memilih baris dan kolom pada tabel


- Menampilkan Data pada Tabel Semua Kolom

SELECT * FROM NAMA_TABEL

- Menampilkan Data pada Tabel Kolom Tertentu


SELECT NAMA_KOLOM FROM NAMA_TABEL
- Menampilkan Jumlah Data pada Tabel
SELECT COUNT(*) FROM NAMA_TABEL
- Menampilkan Data yang Berbeda pada Tabel
SELECT DISTINCT(NAMA_KOLOM) FROM NAMA_TABEL
- Menampilkan Data dengan Kriteria Tertentu pada Tabel
SELECT * FROM NAMA_TABEL WHERE NAMA_KOLOM = DATA_YANG_DICARI
- Mengurutkan Data
SELECT * FROM NAMA_TABLE ORDER BY NAMA_KOLOM ASC/DESC

11) UPDATE : mengubah nilai pada sebuah baris.


- Merubah Data pada Tabel
UPDATE NAMA_TABEL SET NAMA_KOLOM=ISI_DATA

Penulisan Perintah-Perintah SQL :


 Perintah SQL tidak case sensitive
 Perintah SQL bisa ditulis pada satu baris atau lebih
 Antar klausa perintah biasanya ditulis pada baris yang berbeda
 Keywords tidak dapat dipisah antar baris
 Tabs dan spasi diperbolehkan agar mudah dibaca.
 Setiap akhir perintah SQL (tidak baris) diakhiri dengan tanda(;)
SQL secara garis besar terdiri dari 4 macam, yaitu :
1. DDL (Data Definition Language)
DDL menyediakan perintah perintah yang berhubungan dengan operasi – operasi
dasar seperti mendefinisikan, memodifikasi dan menghapus skema relasi misalnya
tabel, view, prosedur dan fungsi.
Contoh :
o Create , untuk membuat object dalam database, bisa berupa table, view, procedure, function,
trigger, ataupun package (oracle). Contoh : create table mahasiswa (npm char(7) not null
primary key,nama char(30), alamat char(50));
o Alter, untuk mengubah structur dari suatu objek dalam database.contoh : alter table
mahasiswa add email char(30)
o Drop, untuk menghapus objek dalam database, contoh: drop table mahasiswa;
o Truncate, untuk menghapus/membersihkan isi table beserta alokasi space yang ada di
dalamnya, contoh : truncate table mahasiswa
o Comment, memberikan keterangan/komentar pada ke dalam kamus data. berisi deskripsi
dari sebuah objek dalam database.
o Rename, mengganti nama objek dalam database.(Mysql, Oracle)
2. DML (Data Manipulation Language)
DML menyediakan perintah perintah untuk menambah, memodifikasi, menghapus
dan mengambil data dalam basis data. Antara lain yaitu :
o Select, untuk menyeleksi data dari dalam database. contoh : select npm, nama, alamat from
mahasiswa;
o Insert, untuk menginputkan record ke dalam suatu table. contoh : insert into
mahasiswa(npm,nama,alamat) values(‘0401034’,’Abdul Malik Ikhsan’,’Jalan Jakarta No.
28’)
o Update, untuk melakukan update dari table yang sudah dibuat. contoh : update mahasiswa
set npm=’001’ where npm=’0401034’;
o Delete, untuk menghapus isi record baik semuanya ataupun sebagian dari suatu table,
cotoh : -delete from mahasiswa (menghapus semua isi ) -delete from mahasiswa where npm
= ‘001’(hanya pada kondisionalnya saja).
o Merge, penggabungan update, insert, delete pada suatu table berdasarkan kondisi yang
cocok. (Oracle).
o EXEC, memanggil procedure yang telah kita buat. contoh : kita buat procedure seleksimhs:
create procedure seleksimhs @npm char(7) as select * from mahasiswa where npm=@npm.
o cara eksekusi : EXEC seleksimhs ‘001’;

3. DCL (Data Control Language)


Terdiri dari 2 statement, yaitu Grant, Revoke, dan DENY, Grant untuk memberikan
hak akses, dan Revoke untuk membuang hak yang telah dilarang dengan perintah Deny atau
hak yang telah diberikan oleh perintah GRANT, sedangkan Deny. Misalnya :
Contoh GRANT : GRANT INSERT, UPDATE, DELETE On mahasiswa To public
Contoh REVOKE
Revoke SELECT On mahasiswa To Public
Contoh DENY
DENY SELECT On mahasiswa To Public

B. MySQL
PENGERTIAN 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 dibawah lisensi GNU General Public License (GPL), tetapi mereka
juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak
cocok dengan penggunaan GPL.
Tidak sama dengan proyek-proyek seperti Apache, dimana perangkat lunak
dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh
penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan
komersial Swedia MySQL AB, dimana memegang 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 adalah Relational Database Management System (RDBMS) yang


didistribusikan secara gratis dibawah lisensi GPL (General Public License). Dimana setiap
orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang
bersifat closed source atau komersial. MySQL sebenarnya merupakan turunan salah satu
konsep utama dalam database sejak lama, yaitu SQL (Structured Query Language). SQL
adalah sebuah konsep pengoperasian database, terutama untuk pemilihan atau seleksi dan
pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara
otomatis. Keandalan suatu sistem database (DBMS) dapat diketahui dari cara kerja optimizer-
nya dalam melakukan proses perintah-perintah SQL, yang dibuat oleh user maupun program-
program aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul
dibandingkan database server lainnya dalam query data. Hal ini terbukti untuk query yang
dilakukan oleh single user, kecepatan query MySQL bisa sepuluh kali lebih cepat dari
PostgreSQL dan lima kali lebih cepat dibandingkan Interbase. Selain itu MySQL juga
memiliki beberapa keistimewaan, antara lain :
1. Portability
MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux,
FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
2. Open Source
MySQL didistribusikan secara open source (gratis), dibawah lisensi GPL sehingga
dapat digunakan secara cuma-cuma.
3. Multiuser
MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa
mengalami masalah atau konflik.
4. Performance Tuning
MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana,
dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
5. Colomn Types
MySQL memiliki tipe kolom yang sangat kompleks, seperti signed / unsigned integer,
float, double, char, text, date, timestamp, dan lain-lain.
6. Comman dan Functions
MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select
dan Where dalam query.
7. Security
MySQL memiliki beberapa lapisan sekuritas seperti level subnetmask, nama host, dan
izin akses user dengan sistem perizinan yang mendetail serta password terenkripsi.
8. Scability dan Limits
MySQL mampu menangani database dalam skala besar, dengan jumlah records lebih
dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat
ditampung mencapai 32 indeks pada tiap tabelnya.
9. Connectivity
MySQL dapat melakukan koneksi dengan client menggunakan protokol TCP/IP, Unix
soket (UNIX), atau Named Pipes (NT).
10. Localisation
MySQL dapat mendeteksi pesan kesalahan pada client dengan menggunakan lebih dari
dua puluh bahasa. Meskipun demikian, bahasa Indonesia belum termasuk didalamnya.
11. Interface
MySQL memiliki interface (antar muka) terhadap berbagai aplikasi dan bahasa
pemrograman dengan menggunakan fungsi API (Application Programming Interface).
12. Cilents dan tools MySQL dilengkapi dengan berbagai tool yang dapat digunakan untuk
administrasi database, dan pada setiap tool yang ada disertakan petunjuk online
13. Struktur tabel MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani
ALTER TABLE, dibandingkan database lainnya semacam PostgresSQL ataupun
Oracle.
MySQL sangat populer dalam aplikasi web seperti MediaWiki (perangkat lunak yang
dipakai Wikipedia dan proyek-proyek sejenis) dan PHP-Nuke yang berfungsi sebagai
komponen basis data dalam LAMP. Popularitas sebagai aplikasi web dikarenakan
kedekatannya dengan popularitas PHP, sehingga seringkali disebut sebagai Dynamic Duo.
Untuk melakukan administrasi dalam basis data MySQL, dapat menggunakan modul
yang sudah termasuk yaitu command-line (perintah: mysql dan mysqladmin). Juga dapat
diunduh dari situs MySQL yaitu sebuah modul berbasis grafik (GUI): MySQL Administrator
dan MySQL Query Browser. Selain itu terdapat juga sebuah perangkat lunak gratis untuk
administrasi basis data MySQL berbasis web yang sangat populer yaitu phpMyAdmin. Untuk
perangkat lunak untuk administrasi basis data MySQL yang dijual secara komersial antara
lain: MySQL front, Navicat dan EMS SQL Manager for MySQL.
FITUR-FITUR MYSQL ANTARA LAIN :
Selain memiliki keistimewaan MySQL juga memiliki beberapa fitur fitur diantaranya ialah :
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. SQL (Structured Query Language) merupakan suatu
bahasa standar yang berlaku di hampir semua software database. MySQL mendukung SQL
versi SQL:2003.
4. Mendukung Sub Select. Mulai versi 4.1 MySQL telah mendukung select dalam select
(subselect)
5. Mendukung Views. MySQL mendukung views sejak versi 5.0
6. Mendukung Stored Prosedured (SP). MySQL mendukung SP sejak versi 5.0.
7. Mendukung Triggers. MySQL mendukung trigger pada versi 5.0 namun masih terbatas.
Pengembang MySQL berjanji akan meningkatkan kemampuan trigger pada versi 5.1.
8. Mendukung replication.
9. Mendukung transaksi.
10. Mendukung foreign key.
11. Tersedia fungsi GIS.
12. Free (bebas didownload)
13. Stabil dan tangguh
14. Fleksibel dengan berbagai pemrograman
15. Security yang baik
16. Dukungan dari banyak komunitas
17. Perkembangan software yang cukup cepat.
TIPE DATA
Beberapa jenis tipe data dalam MySQL memiliki tipe tersendiri dalam tiap field di
table databasenya.
MySQL mengenal beberapa type data field, yaitu :
a. Tipe data numeric.
Tipe data numerik dapat dibedakan menajdi dua kelompok, yaitu tipe data integer dan tipe
data floating point. Tipe data integer untuk data bilangan bulat sedangkan tipe data floating
point digunakan untuk bilangan desimal.
b. Tipe data string.
c. Tipe data waktu
Mengenal SQL ( Structured Query Language )

SQL ( Structured Query Language ) adalah sebuah bahasa permintaan database yang
terstruktur. Bahasa SQL ini dibuat sebagai bahasa yang dapat merelasikan beberapa tabel
dalam database maupun merelasikan antar database.
SQL dibagi menjadi tiga bentuk Query, yaitu :

DDL ( Data Definition Language )

DDL adalah sebuah metode Query SQL yang berguna untuk mendefinisikan data pada
sebuah Database, Query yang dimiliki DDL adalah :
 CREATE : Digunakan untuk membuat Database dan Tabel
 Drop : Digunakan untuk menghapus Tabel dan Database
 Alter : Digunakan untuk melakukan perubahan struktur tabel yang telah
dibuat, baik menambah Field ( Add ), mengganti nama Field( Change )
ataupun menamakannya kembali ( Rename ), dan menghapus Field
( Drop ).
DML ( Data Manipulation Language )

DML adalah sebuah metode Query yang dapat digunakan apabila DDL telah terjadi,
sehingga fungsi dari Query DML ini untuk melakukan pemanipulasian database yang telah
dibuat. Query yang dimiliki DML adalah :

 INSERT : Digunakan untuk memasukkan data pada Tabel Database


 UPDATE : Digunakan untuk pengubahan terhadap data yang ada pada Tabel Database
 DELETE : Digunakan untuk Penhapusan data pada tabel Database

DCL ( Data Control Language )

DCL adalah sebuah metode Query SQL yang digunakan untuk memberikan hak
otorisasi mengakses Database, mengalokasikan space, pendefinisian space, dan pengauditan
penggunaan database. Query yang dimiliki DCL adalah :

 GRANT : Untuk mengizinkan User mengakses Tabel dalam Database.


 REVOKE : Untuk membatalkan izin hak user, yang ditetapkan oleh perintah
GRANT
 COMMIT : Mentapkan penyimpanan Database
 ROLLBACK : Membatalkan penyimpanan Database

BAHASA PEMROGRAMAN
Terdapat beberapa API (Application Programming Interface) tersedia yang
memungkinkan aplikasi-aplikasi komputer yang ditulis dalam berbagai bahasa pemrograman
untuk dapat mengakses basis data MySQL antara lain: bahasa pemrograman C, C++, C#,
bahasa pemrograman Eiffel, bahasa pemrograman Smalltalk, bahasa pemrograman Java,
bahasa pemrograman Lisp, Perl, PHP, bahasa pemrograman Python, Ruby, REALbasic dan
Tcl. Sebuah antarmuka ODBC memanggil MyODBC yang memungkinkan setiap bahasa
pemrograman yang mendukung ODBC untuk berkomunikasi dengan basis data MySQL.
Kebanyakan kode sumber MySQL dalam ANSI C.
Kelebihan MySQL
Database MySQL memiliki beberapa kelebihan dibanding database lain, diantaranya :

 MySQL merupakan Database Management System ( DBMS )


 MySQL sebagai Relation Database Management System ( RDBMS ) atau disebut
dengan database Relational
 MySQL Merupakan sebuah database server yang free, artinya kita bebas menggunakan
database ini untuk keperluan pribadi atau usaha tanpa harus membeli atau membayar
lisensinya
 MySQL merupakan sebuah database client
 MySQL mampu menerima query yang bertupuk dalam satu permintaan atau Multi-
Threading.

 MySQL merupakan Database yang mampu menyimpan data berkapasitas sangat


besar hingga berukuran GigaByte sekalipun.
 MySQL diidukung oleh driver ODBC, artinya database MySQL dapat diakses
menggunakan aplikasi apa saja termasuk berupa visual seperti visual Basic dan Delphi.
 MySQL adalah database menggunakan enkripsi password, jadi database ini cukup
aman karena memiliki password untuk mengakses nya.
 MySQL merupakan Database Server yang multi user, artinya database ini tidak hanya
digunakan oleh satu pihak orang akan tetapi dapat digunakan oleh banyak pengguna.
 MySQL mendukung field yang dijadikan sebagai kunci primer dan kunci uniq ( Unique
).
 MySQL memliki kecepatan dalam pembuatan table maupun peng-update an table.

Fungsi – Fungsi Pada MySQL

Mengaktifkan Direktori MySQL Server


Untuk dapat menggunakan MySQL terlebih dahulu aktifkan Server MySQL dengan
menghidupkan daemond MySQL. Program MySQL yang digunakan pada modul ini adalah
XAMPP 1.7, maka untuk menjalankan daemond MySQL terdapat pada direktori yaitu
C:\Program Files\Xampp\Mysql\Bin
Untuk masuk kedalam server MySQL, bukalah MS-DOS Prompt anda melalui Run
kemudian ketik Command atau cmd. Maka anda dapat masuk ke dalam direktori MySQL
melalui MS-DOS Promtp seperti dibawah ini.

Masuk dan Keluar dari Server MySQL

MySQL adalah sebuah database server yang sangat aman. MySQL memiliki
kemampuan memanajemen user dalam mengakses. Jadi, tidak sembarang user dapat
mengakses sebuah database yang diciptakan MySQL. Maka sebelum anda memiliki User
untuk mengakses MySQL anda juga dapat Mengakses database MySQL menggunakan User
Root.

Berikut adalah perintah yang digunakan untuk mengkoneksikan kedalam


Server Mysql : Shell > MySQL –u Root –p

Enter Password: *********

Keterangan : Tanda –u menerangkan bahwa kita akan masuk menggunakan User


Name bernama Root.
Tanda –p menyatakan kita akan masuk menggunakan Password.
Berikut adalah perintah yang digunakan untuk mengkoneksikan kedalam Server
Mysql melalui Root : Shell> Mysql –u root

Untuk dapat keluar dari Server MysQL kita dapat

mengetikkan

Untuk dapat keluar dari Server MysQL kita dapat mengetikkan Intruksi quit ata \q :
Mysql> quit
Bye
Mysql> \q
Bye
Bantuan dalam MySQL
Database MySQL menyediakan beberapa fasilitas bantuan yang berguna untuk
mendokumentasikan atau memanipulasikan server yaitu dengan cara mengetikan
intruksi \h atau \?.
Mysql> \?
Semua Query harus diakhiri dengan tanda titik koma ( ; ). Tanda ini menunjukkan
bahwa query telah berakhir dan siap dieksekusi.

Help ( \h ) : Digunakan untuk menampilkan file bantuan pada MySQL

? ( \? ) : Perintah ini sama dengan perintah Help

Clear ( \c ) : Berguna untuk membersihkan atau menggagalkan semua perintah yang telah

berjalan dalam suatu prompt

Connect ( \r ) : untuk melakukan penyegaran koneksi ke dalam database yang ada pada
Server Host

Ego ( \G ) : berguna untuk menampilkan data secara horizontal.

Go ( \g ) : member perintah server untuk mengeksekusi

tee ( \T ) : mengatur tempat file yang akan didokumentasikan.


Contoh :
mysql> \T d:\belajar mysql.doc
Logging to file ‘d:\data.doc;’
Note ( \t ) : akhir dari ( \T ) yang berguna untuk mendokumentasikan semua query.

Print ( \p ) : mencetak semua query yang telah kita perintahkan kelayar.

Prompt ( \R ) : Mengubah prompt standar sesuai keinginan.

Source ( \. ) : berguna untuk mengeksekusi query dari luar yang berbentuk .sql

Use ( \u ) : berguna untuk memasuki database yang akan digunakan maupun menggant

database yang akan di gunakan.


TUJUAN MYSQL
MySQL saat ini paling populer dan banyak digunakan sumber dunia teknologi database
terbuka dan sistempenyimpanan data. MySQL menawarkan kehandalan besar dan
kemudahan penggunaan. Ini adalah gratis, dan dilengkapi dengan dokumentasi gratis serta
ribuan programer yang erbagi kode mereka yang berhubungan dengan berkomunikasi dengan
database MySQL.
Anda dapat memikirkan database MySQL sebagai wadah yang menyimpan string (text based)
data. Gambar, media, file, file audio, dan hal hal alam yang benar benar tidak harus disimpan
dalam database. Caranya adalah dengan meletakan file file pada server dalam foler dan hanya
referensi nama dan path di database tersebut.
Berikut adalah beberapa jenis aplikasi PHP dan MySQL dapat membantu anda membuat:
1. Situs Blog
2. Custom Database Driver Website Dinamis (seperti developPHP)
3. E-commerce dan Pemrograman Custom Toko Online
4. Jaringan Sosial dan omunitas
5. Guestbook
6. Seluruh Website Dinamis
7. Klien dan informasi Pelanggan.
CONTOH DATABASE DAN TABEL DI MYSQL
1. Membuat Database
Sebagai langkah awal kita akan membuat sebuah database terlebih dahulu

CREATE DATABASE bioskop;

Bila berhasil kamu dapat melihat database dengan perintah berikut:

SHOW DATABASES;

2. Membuat Tabel
Sekarang mari kita buat beberapa tabel yang akan digunakan untuk menangani pembelian
tiket film:

CREATE TABLE operator(


id VARCHAR (20) NOT NULL,
nama VARCHAR (50) NOT NULL,
password VARCHAR(100) NOT NULL,
created_at DATETIME NOT NULL,
updated_at TIMESTAMP,
PRIMARY KEY (id)
);

CREATE TABLE film (


id VARCHAR (20) NOT NULL,
judul VARCHAR (50) NOT NULL,
deskripsi TEXT,
rating VARCHAR (50) NOT NULL,
produksi VARCHAR(100) NOT NULL,
distributor VARCHAR(100) NOT NULL,
durasi INT NOT NULL,
country VARCHAR(50) NOT NULL,
created_at DATETIME NOT NULL,
updated_at TIMESTAMP,
PRIMARY KEY (id)
);

CREATE TABLE teater (


id VARCHAR (20) NOT NULL,
nama VARCHAR (50) NOT NULL,
created_at DATETIME NOT NULL,
updated_at TIMESTAMP,
PRIMARY KEY (id)
);

-- foreign key: teater_id


CREATE TABLE kursi (
id VARCHAR (20) NOT NULL,
nama VARCHAR (50) NOT NULL,
teater_id VARCHAR(20) NOT NULL,
created_at DATETIME NOT NULL,
updated_at TIMESTAMP,
PRIMARY KEY (id)
);
-- foreign key: film_id, teater_id
CREATE TABLE jadwal (
id VARCHAR (20) NOT NULL,
hari VARCHAR (50) NOT NULL,
jam VARCHAR(20) NOT NULL,
harga INT NOT NULL,
film_id VARCHAR(20) NOT NULL,
teater_id VARCHAR(20) NOT NULL,
created_at DATETIME NOT NULL,
updated_at TIMESTAMP,
PRIMARY KEY (id)
);
-- foreign key: operator_id, jadwal_id, kursi_id,
CREATE TABLE transaksi (
id VARCHAR(20) NOT NULL,
operator_id VARCHAR(20) NOT NULL,
jadwal_id VARCHAR(20) NOT NULL,
kursi_id VARCHAR(20) NOT NULL,
jumlah_dibayar INT NOT NULL,
kembalian INT NOT NULL,
created_at DATETIME NOT NULL,
PRIMARY KEY (id)
);

Bila berhasil seharusnya Anda dapat melihat daftar tabel dengan perintah berikut:

SHOW TABLES;

Kelebihan dan Kekurangan SQL


Kelebihan :
 Cocok untuk perusahaan dengan skala kecil, menengah, dan besar sehingga mampu
untuk mengolah data dengan jumlah yang besar.
 Memiliki kemampuan untuk management user dan tiap user bisa diatur hak akses
terhadap suatu database oleh database administrator.
 Untuk diterapkan pada pembangunan suatu program aplikasi, akan mudah dalam
melakukan koneksi dengan computer client yang pembangunan aplikasinya
menggunakan software yang sama platform dengan MS-SQL, misalnya Microsoft
Visual Basic.
 Memiliki tingkat pengamanan / security data yang baik.
 Memiliki kemampuan untuk back-up data, rollback data, dan recovery data.
 Memiliki kemampuan untuk membuat database mirroring dan clustering.
Kekurangan :
 Hanya dapat diimpelementasikan pada 1 unit server, jika terdapat tambahan server
maka hanya akan berfungsi sebagai pasif / standby server (tidak memiliki
kemampuanTechnology Cluster Server seperti halnya pada DMBS Oracle).
 Hanya bisa berjalan pada satu platform system operasi yaitu Microsoft Windows.
 Merupakan software berlisensi dan berharga mahal untuk perusahaan skala kecil dan
menengah
Kelebihan dan Kekurangan MySQL
Kelebihan MySQL :
Sebagai salah satu software yang banyak digunakan oleh berbagai kalangan, MySQL
memiliki banyak sekali keunggulan. Berikut ini adalah beberapa keunggulan dan juga
kelebihan DBMS MySQL :
 Merupakan salah satu software yang portable
MySQL memiliki keunggulan yang pertama, yaitu merupakan salah satu jenis
software yang protable, Software portable ini berarti MySQL bisa dijalankan untuk
mengolah database multi platform. Sistem operasi Windows, Linux, Mac, dan
sebagainya bisa menggunakan DBMS MySQL ini, sehingga hal ini membuat MySQL
menjadi lebih baik dari segi efisiesnsi dan juga fungsionalitas yang lebih baik.
 MySQL merupakan salah satu DBMS yang opensource
Keunggulan utama dari MySQL adalah gratis. Ya, MySQL dengan versi paling basic
atau sederhana dijual dengan harga yang gratis, karena merupakan software Open
source. Namun demikian, meskipun merupakan software opensource, MySQL sudah
memiliki liosensi GPL, sehingga tidak perlu lagi diragukan kualitasnya. Selain itu,
bagi anda yang membutuhkan fungsi lebih dari MySQL, anda bisa membeli versi
enterprise, ataupun membeli source code yang ditawarkan oleh MySQL dengan harga
yang cukup terjangkau, apabila dibandingkan dengan Oracle.
 Multi-User
Sama seperti program DBMS lainnya, meskipun merupakan software yang open
source, MySQL memiliki kemampuan yang sangat baik untuk mendukung
kepentingan mulstiuser, dimana bisa dijalankan oleh banyak user dalam satu waktu
tanpa perlu mengalami kendala seperti crash, dan semacamnya.
 Memiliki tipe data yang bervariasi
Tipe data yang ditawarkan oleh MySQL juga sangat bervariasi. bebrapa tipe data yang
ditawarkan oleh MySQL adalah integer, float, double, char, text, date, timestamp dan
masih banyak lagi. Dengan beragam tipe data yang didukung oleh MySQL, maka
software ini merupakan salah satu jenis software yang sangat berguna untuk
kebutuhan DBMS.
 Memilki fitur keamanan yang baik
Kelebihan lainnya dari MySQL adalah fitur keamananya yang cukup baik, apalagi
dengan statusnya yang open source, alias gratis, fitur keamanan yang ditawarkan oleh
software ini sudah sanga mumpuni.
 Administrative tools yang lengkap
Administrative tools yang terdapat di dalam software ini pun sudah terbilang lengkap.
User dan juga programmer dapat menggunakan MySQL dengan mudah, tanpa perlu
harus repot – repot mempelajari MySQL secara detil.
 Struktur tabel yang lebih fleksibel
Struktur data yang dimiliki oleh MySQL juga dinilai lebih fleksibel dan juga mudah
untuk digunakan. Hal ini terutama untuk menangani table berupa ALter Table.
 Dapat diintegrasikan dengan berbagai bahasa pemrograman
MySQL juga dapat diintegrasikan dengan berbagai macam bahasa pemrograman yang
ada. Dengan begitu, MySQL bisa membantu pembangunan dari sebuah sistem dengan
mudah dan juga efektif, karena dapat terintegrasi dengan berbagai macam bahasa
pemrograman standar yang baisa digunakan dalam pembangunan suatu sistem.
 Tidak membutuhkan spesifikasi hardware yang tinggi
Salah satu hal penting yang menarik yang ada pada MySQL adalah spesifikasi. Untuk
dapat menjalankan program MySQL ini, maka tidak dibutuhkan spesifikasi minimal
komputer yang tinggi, sehingga PC ataupun laptop sekalipun masih bisa
menggunakan software MySQL ini dengan baik tanpa menemui kendala dan masalah
mengenai spesifikasinya.
 RAM Kecil dapat menggunakannya
Ram komputer anda kecil ? jangan khawatir DBMS yang satu ini memiliki kelebihan
yaitu dapat di install di ram yang relatif kecil bila di bandingkan dengan database lain.
Tak ayal, hanya dengan memory < 1gb pun anda dapat menggunakan DBMS ini.
 Salah satu cara agar laptop tidak lemot saat anda sedang belajar programming adalah
dengan menggunakan DBMS ini sebagai solusi.
Kekurangan MySQL :
Meskipun memiliki banyak kelebihan, terutama karena merupakan salah satu program atau
software yang opensource, ternyata MySQL juga memiliki beberapa kekurangan. Berikut ini
adalah beberapa kekurangan MySQL :
 Sulit untuk diaplikasikan pada intansi atau perusahan dengan database yang besar
Karena merupakan salah sau jenis DBMS yang ramah terhadap spesifikasi komputer,
maka MySQL pun memiliki fitur yang tidak selengkap Oracle. Hal ini berhubungan
dengan implementasi dari DBMS yang dilakukan, dimana MySQL tidak mampu atau
diragukan kemampuannya untuk melakukan manajemen database degan jumlah data
yang sangat besar. Sehingga tidak cocok untuk diterapkan pada instansi atau
perusahaan besar.
 Support yang kurang
Technical support dari MySQL juga dianggap kurang baik. Hal ini mungkin
berhubungan dengan status open source yang dimiliki oleh MySQL. Hal ini membuat
user akan mengalami kesulitan dalam menghubungi technical support cari MySQL
ketika dihadapkan pada suatu kendala atau permasalahan saat menggunakan software
ini.
 Tidak populer untuk aplikasi game dan mobile
Sayangnya adalah DBMS mysql ini sangat kurang digunakan untuk aplikasi Game
dan Mobile application. Jadi jika anda ingin mengembangkan dua jenis aplikasi ini,
MYSQL bukan teman yang tepat.
Perbedaan SQL dan MySQL Paling Utama
Setelah mengetahui secara garis besar, sekaranglah saatnya Anda memahami beberapa
perbedaan SQL dan MySQL yang paling utama:
 Environment
Seperti yang sudah dijelaskan sebelumnya, SQL Server dijalankan bersama-sama dengan
.NET, sedangkan MySQL dapat dipasangkan dengan bahasa pemrograman lainnya, biasanya
PHP. Awalnya, SQL Server hanya dapat dijalankan di Windows, tetapi sejak tahun
lalu, Microsoft secara resmi mengumumkan bahwa SQL Server juga bisa digunakan di
Linux. Namun tetap saja, Linux bukanlah sistem operasi yang mudah digunakan, apalagi bagi
pengguna awam sehingga kami tetap menyarankan Anda untuk menjalankan SQL Server di
Windows, dan MySQL di Linux.
 Syntax
Bagi sebagian besar pengguna, syntax merupakan perbedaan yang paling mencolok di antara
kedua sistem ini. Penguasaan terhadap salah satu aturan syntax tentu saja akan memengaruhi
Anda dalam mengambil keputusan apakah MySQL atau SQL Server yang cocok untuk Anda.
Meskipun kedua sistem ini berbasis SQL, perbedaan syntax yang ada tentu tidak bisa
dilupakan begitu saja. Sebagai contoh, lihatlah pemisalan di bawah ini:
MySQL
SELECT age
FROM person
ORDER BY age ASC
LIMIT 1 OFFSET 2
Microsoft SQL Server
SELECT TOP 3 WITH TIES *
FROM person
ORDER BY age ASC
Kedua kode di atas mengirimkan hasil yang sama – mengembalikan 3 entry dengan youngest
age dari tabel person. Namun Anda bisa melihat perubahan drastis yang terjadi dalam syntax.
Tentu saja, syntax sangat subjektif sehingga kami tidak bisa memberikan rekomendasi atau
saran; gunakanlah yang sesuai kebutuhan Anda.
 SQL Server lebih dari sekadar RDBMS
Kelebihan terbesar software berpemilik (properietary software) vs software yang open-source
adalah support eksklusif yang diterima. Bisa dilihat dari keberadaan SQL Server yang
didukung oleh salah satu perusahaan IT terbesar di dunia. Microsoft membuat tool tambahan
untuk SQL Server yang digabungkan dengan RDBMS, termasuk tool analisis data. SQL
Server juga memiliki reporting server – SQL Server Reporting Services, dan juga tool ETL.
Keistimewaan ini membuat SQL Server menjadi salah satu RDBMS yang sangat mumpuni.
MySQL juga memiliki keistimewaan yang sama tetapi Anda harus memanfaatkan pihak
ketiga, yang bukan merupakan solusi terbaik bagi sebagian besar pengguna.
 Mesin penyimpanan
Perbedaan SQL dan MySQL lainnya terletak pada cara kedua sistem ini menyimpan data.
SQL Server menggunakan single storage engine yang dikembangkan oleh Microsoft. Tentu
saja hal ini sangatlah kontras dengan multiple engines yang diaktifkan untuk MySQL. Dalam
hal ini, developer MySQL lebih bebas dan leluasa karena mereka dapat menggunakan engine
yang berbeda untuk berbagai tabel berdasarkan pada kecepatan, keandalan, atau hal
lainnya. Mesin penyimpanan MySQL yang paling populer adalah InnoDB yang meskipun
terkesan lambat, tetap dapat diandalkan. Mesin penyimpanan lainnya yang dimiliki oleh
MySQL adalah MyISAM.
 Pembatalan query
Tidak banyak orang yang tahu jika salah satu dari sekian banyak perbedaan MySQL dan SQL
Server mencakup pada pembatalan query. Di MySQL, Anda tidak dapat membatalkan query
mid-execution. Hal ini berarti apabila suatu perintah mulai dijalankan, maka Anda hanya bisa
berharap kerusakan atau error yang terjadi bisa dipulihkan atau diperbaiki. Sementara itu di
SQL Server, Anda dapat membatalkan query execution pada saat proses sedang berlangsung.
Perbedaan ini menjadi salah satu momok yang cukup menyebalkan bagi admin database.
Sedangkan untuk developer, perbedaan ini tidak akan jadi masalah karena mereka jarang
sekali melakukan pembatalan query saat proses sedang berlangsung.
 Keamanan
Sekilas perbedaan SQL dan MySQL soal keamanan memang tidak begitu terlihat jelas.
Keduanya sama-sama EC2 compliant sehingga tidak menjadi masalah bagi Anda untuk
memilih SQL Server atau MySQL. Selain itu, pengaruh Microsoft juga terlihat besar di sini
karena telah melengkapi SQL Server dengan fitur keamanan yang canggih. Tool keamanan
yang berdedikasi – Microsoft Baseline Security Analyzer – sangat menjamin keamanan yang
ada pada SQL Server. Jika faktor keamanan yang menjadi bahan pertimbangan, maka Anda
bisa memilih keduanya. Tentu saja pilihan ada di tangan Anda.
 Harga
Di poin ini, sepertinya MySQL-lah sang pemenang. Microsoft mengharuskan Anda membeli
lisensi untuk bisa menjalankan berbagai database di SQL Server. Microsoft juga
menyediakan lisensi yang gratis, tetapi ini hanya bersifat sebagai jembatan agar Anda bisa
lebih mengenal RDBMS. Berbanding terbalik dengan MySQL, Anda bisa memanfaatkan
GNU General Public Licence yang benar-benar gratis. Namun perlu diingat, jika Anda
membutuhkan bantuan untuk MySQL, maka Anda harus membayarnya.
 Community Support
Meskipun dituntut untuk harus membayar support MySQL, community support yang
ditawarkan akan sangat berguna bagi Anda. Tak jarang kerusakan atau error akan terjadi
dan banyaknya panduan, tutorial, dan bantuan resmi MySQL tentu sangat membantu Anda
dalam mengatasi masalah yang ditemui.
 IDE
Kedua sistem RDMBS ini mendukung tool Integrated Development Environment yang
menawarkan environment yang kohesif untuk pengembangan. MySQL memanfaatkan
Enterprise Manager dari Oracle, sedangkan SQL Server menggunakan Management Studio
(SSMS). Perbedaan SQL dan MYSQL tentu akan sangat membingungkan Anda. Oleh karena
itu, ketahuilah dengan benar masing-masing perbedaannya.

Anda mungkin juga menyukai