MySQL
adalah multiuser database yang
menggunakan bahasa Structured Query Language (SQL). SQL adalah bahasa standar yang
digunakan untuk mengakses database server. MySQL juga salah satu jenis database
server yang sangat terkenal. Kepopulerannya disebabkan MySQL menggunkaan SQL
sebagai bahasa dasar untuk mengakses databasenya. Selain itu bersifat free
(tidak perlu membayar untuk menggunakannya).
Tujuan
dari pemakaian SQL dalam menyelesaikan tugas yang berkaitan dengan database
diantaranya:
1. Memanggil
data dari 1 tabel atau lebih pada 1 database atau lebih.
2. Memanilupasi
data pada tabel dengan menyisipkan, menghapus, atau memperbaharui record
3. Mendapatkan
ringkasan informasi mengenai data pada tabel, seperti total, jumlah record,
nilai minimum, nilai maks dan nilai rata-rata
4. Membuat,
memodifikasi atau menghapus tabel pada database.
A. Tipe-Tipe
Tabel pada MySQL
Salah
satu kelebihan dari MySQL adalah Anda dapat mendefinisikan tipe untuk tiap
tabel. MySQL mendukung beberapa tipe tabel, tergantung konfigurasi saat proses
instalasi MySQL. MySQL memiliki 3 (tiga) tipe data utama, yaitu MyISAM, InnoDB
dan HEAP.
Jika kita tidak
menyebutkan tipe tabel saat membuat tabel, maka tipe tabel otomatis akan dibuat
sesuai konfigurasi default server MySQL. Hal ini ditentukan oleh variabel
default-table-type di file konfigurasi MySQL.
1.
MyISAM
Tipe
tabel MyISAM merupakan tipe tabel yang sederhana, stabil dan mudah digunakan.
Jika kita akan menyimpan data sederhana yang tidak terlalu rumit, maka
gunakanlah tipe tabel ini. Kelebihan utama MyISAM adalah kecepatan dan
kestabilannya. Jika kita memilih tipe tabel MyISAM, maka MySQL secara otomatis
akan menentukan salah satu dari tiga jenis tabel MyISAM, yaitu :
MyISAM static. Jenis ini digunakan ketika semua kolom dalam tabel didefinisikan
dengan ukuran yang pasti (fixed). Dengan kata lain, tidak ada kolom yang
memiliki tipe seperti VARCHAR, TEXT dan BLOB. Karena sifatnya yang fixed, maka
jenis ini akan lebih cepat, aman dan stabil.
MyISAM dymanic.
Jenis ini digunakan ketika terdapat kolom dengan tipe yang dinamis, seperti
tipe kolom VARCHAR. Keuntungan utama dari jenis ini adalah
ukuran yang dinamis. Jadi sifatnya lebih efektif karena ukuran data
(file) menyesuaikan isi dari masing-masing kolom (field).
MyISAM Compressed. Kedua jenis MyISAM, static dan dynamic dapat
dikompresi menjadi satu jenis yaitu MyISAM Compressed dengan perintah
myisamchk. Tentunya hasilnya lebih kecil dari segi ukuran. Tabel yang
terkompresi tidak dapat dikenakan operasi seperti INSERT, UPDATE dan DELETE.
2.
InnoDB
Tipe
tabel InnoDB merupakan tipe tabel MySQL yang mendukung proses transaksi. Tipe
ini memiliki beberapa keunggulan, antara lain:
·
Mendukung transaksi antar tabel.
·
Mendukung row-level-locking.
·
Mendukung Foreign-Key Constraints.
·
Crash recovery.
3.
HEAP
Tabel
dengan tipe HEAP tidak menyimpan datanya di hardisk, tetapi menyimpan di RAM
(memori). Tipe tabel ini biasanya digunakan sebagai tabel sementara
(temporary). Tabel secara otomatis akan dihapus (hilang) dari MySQL saat
koneksi ke server diputus atau server MySQL dimatikan.
B. Tipe-Tipe Data pada SQL
1.
Tipe
data interger
Pada tipe data ini yang
dapat disimpan hanya berupa angka (numeric) saja, baik berupa angka positif
maupun angka negative. Lebih jelasnya lihat tabel dibawah ini:
|
Tipe Data
|
Jangkauan Signed
|
Jangkauan unsigned
|
Memori
|
Fungsi
|
|
Tinyint
|
-128
– 127
|
0
– 255
|
1
byte
|
Dugunakan
untuk menyimpan data bilangan bulat positif dan negative
|
|
Smallint
|
-32768
– 32767
|
0
– 65535
|
2
|
Dugunakan
untuk menyimpan data bilangan bulat positif dan negative
|
|
Mediumint
|
-8388608
– 8388607
|
0
– 16777215
|
3
|
Dugunakan
untuk menyimpan data bilangan bulat positif dan negative
|
|
Int
|
-2147483648
– 214748 3647
|
0
– 4294967295
|
4
|
Dugunakan
untuk menyimpan data bilangan bulat positif dan negative
|
|
Bigint
|
-922337203685477508
– 922337203685477807
|
0
– 18446744073709551615
|
8
|
Dugunakan
untuk menyimpan data bilangan bulat positif dan negative
|
|
Fload
|
Tergantung
nilainya
|
-
|
4
|
Dugunakan
untuk menyimpan data bilangan bulat positif dan negative persisi tunggal
|
|
Double
|
Tergantung
nilainya
|
-
|
8
|
Dugunakan
untuk menyimpan data bilangan bulat positif dan negative persisi ganda
|
|
Decimal
|
Tergantung
nilainya
|
-
|
M+2
|
Dugunakan
untuk menyimpan data bilangan bulat positif dan negative
|
Sedangkan
attribute AUTO_INCREMENT, UNSIGNED dan ZEROFILL hanya dapat digunakan pada tipe
data interger saja:
AUTO_INCREMENT:
memberikan nilai data numberik yang di setting oleh servernya , jadi secara
otomatis nilai dari data (field) tsb akan selalu naik 1 angka setelah nilai
data sebelumnya.
UNSIGNED:
memberikan nilai tipe data yang hanya dengan nilai positif saja, karena secara
default tipe data ini jangkauannya sampai negative
ZEROFILL:
berfungsi untuk memberikkan imbuhan 0 di depan nilaisepanjang lebar tipe data
2.
Tipe
data string
Pada
tipe data ini bernilai string (alphanumeric/karakter)dan numeric. Yang jelas
nilai numeric disini dapat untuk operasi perhitungan sebelum dilakukan
konversi.
Tabel
tipe data string di MySQL:
|
Tipe Data
|
Max Size
|
Memori
|
Fungsi
|
|
VARCHAR
|
0
s/d 255 karakter (versi 4.1), 0 s/d 65535 (versi 5.03)
|
X+1
byte
|
Digunakan
untuk menyimpan data string ukuran dinamis
|
|
TINYTEXT
|
0
s/d 255 karakter (versi 4.1), 0 s/d 65535 (versi 5.03)
|
X+1
byte
|
Digunakan
untuk menimpan data teks
|
|
TINYBLOB
|
|
X+2 byte
|
|
|
TEXT
|
0
s/d 65535 (216 – 1) karakter
|
X+2 byte
|
Digunakan untuk menimpan data teks
|
|
BLOB
|
216
– 1 byte
|
X+2 byte
|
Digunakan untuk menyimpan data biner
|
|
MEDIUMTEXT
|
0
s/d 224 – 1 karakter
|
X+3 byte
|
Digunakan untuk menimpan data teks
|
|
MEDIUMBLOB
|
224
– 1 byte
|
X+3 byte
|
Digunakan untuk menyimpan data biner
|
|
LONGTEXT
|
0
s/d 232 – 1 karakter
|
X+4 byte
|
Digunakan untuk menimpan data teks
|
|
LONGBLOB
|
232
– 1 byte
|
X+4 byte
|
Digunakan untuk menyimpan data biner
|
3.
Tipe
data waktu
ini
menyimpan informasi waktu, baik tanggal maupun jam. Walaupun data yang disimpan
disini numeric tetapi pembacaan thd data string. Jadi perlu dilakukan konversi
bila ingin melakukan perhitungan. Berikut tipe data waktu yang didukung MySQL:
|
Tipe Data
|
Format Standar
|
Zero Value
|
Fungsi
|
|
DATETIME
|
YYY-MM-DD
HH:MM:SS
|
0000-00-00
00:00:00
|
Digunakan
untuk menyimpan data tanggal dan waktu
|
|
DATE
|
YYY-MM-DD
|
0000-00-00
|
Digunakan
untuk menyimpan data tanggal
|
|
TIME
|
HH:MM:SS
|
00:00:00
|
Digunakan
untuk menyimpan data waktu
|
|
YEAR
|
YYY
|
0000
|
Digunakan
untuk menyimpan data tahun dari tanggal
|
|
TIMESTAMP
|
YYYMMDDHHMMSS
|
00000000000000
|
|
4.
Tipe
data binary string
BINARY:
mendefinisikan bilangan dengan ukuran tetap hingga 8000 byte
VARBINARY:
mendefiniskan bilangan dengan ukuran variasi hingga 8000 byte
5.
Tipe
data lainnya
ENUM:
merupakan tipe data yang menyimpan beberapa pilihan data yang akan disimpan
tetapi hanya satu pilihan yang boleh disimpan. Kegunaan enumerisasi (kumpulan
data)
SET:
tipe data ini hamper mirip dengan ENUM tetapi bisa memilih lebih dari 1.
Kegunaan combination (himpunan data)
C. Jenis perintah SQL
1. DDL ( DATA DEFINITION LANGUAGE)
Bagian
drSQL yang digunakan unt mendefinisikan data dan obyek database. Perintah
tersebut berupa membuat, mengubah, menghapus dll.
Perintah
yang termasuk DDL adalah:
|
Perintah
|
kegunaan
|
|
Create table
|
Membuat tabel
|
|
Create index
|
Membuat indeks
|
|
Alter table
|
Mengubah atau menyisipkan ked lm tabel
|
|
Drop table
|
Menghapus tabel
|
|
Drop index
|
Menghapus indeks
|
2. DML (DATA MANIPULATION LANGUAGE)
Merupakan
bagian dari perinth SQL yang digunakan untuk manipulasi data. Perintah-perintah
ini bertugas untuk melakukan query dan perubahan yang dilakukan di dalam suatu
tabel.
Bebrpa
perintah SQL yg temasuk DML adalah:
|
Perintah
|
Kegunaan
|
|
Select
|
Digunakan unt memilih data dr suatu
tabel
|
|
Insert
|
Menyisipkan atau memasukan data dr
suatu tabel
|
|
Delete
|
Menghapus isi data dr baris (record)
pd tabel trtentu.
|
|
update
|
Mengubah isi data dr kolom (field) pd
tabel tertentu.
|
Tidak ada komentar:
Posting Komentar
Tinggalkan Komentar mu...!! ^^