0% menganggap dokumen ini bermanfaat (0 suara)
105 tayangan

Basis Data SQL Query

Modul ini membahas tentang perancangan database dan SQL MySQL. Tujuannya adalah agar mahasiswa dapat merancang database dengan menerapkan aturan perancangan database dan menggunakan perintah dasar MySQL. Modul ini menjelaskan tipe-tipe tabel, field, dan data yang dapat digunakan dalam MySQL beserta penjelasan dan contohnya.

Diunggah oleh

ESPADA EXPERT
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
105 tayangan

Basis Data SQL Query

Modul ini membahas tentang perancangan database dan SQL MySQL. Tujuannya adalah agar mahasiswa dapat merancang database dengan menerapkan aturan perancangan database dan menggunakan perintah dasar MySQL. Modul ini menjelaskan tipe-tipe tabel, field, dan data yang dapat digunakan dalam MySQL beserta penjelasan dan contohnya.

Diunggah oleh

ESPADA EXPERT
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 11

MODUL PERKULIAHAN

Basis Data
SQL : Structure Query Language
(Part 2 – MySQL)

Fakultas : Ilmu Komputer Tatap Muka Kode Mata Kuliah : F40119003

Program Studi : Teknik Informatika


07 Disusun Oleh : Tim Dosen
ABSTRAK TUJUAN
Modul ini berisi materi tentang Mahasiswa mampu merancang database
perancangan database dan dasar - dasar dengan menerapkan aturan perancangan
MySQL database, menggunakan perintah-perintah
dasar DBMS MySQL.
Merancang Database
Tipe Table My SQL
Dalam membuat database pastilah tidak lepas dengan yang namanya tabel, fungsi dari tabel
yaitu untuk menyimpan data dengan tipe data tertentu. Pada MySQL ada beberapa jenis tabel
yang saling mempunyai kemampuan sendiri. Tabel MySQL dibagi menjadi 2 jenis proses,
yaitu:
• Transaction safe merupakan tabel yang mendukung proses transaksi. Artinya tabel
jenis ini dapat memperkecil terjadinya kesalahan ketika melakukan pemrosesan data.
• Transaction non safe merupakan tabel yang tidak mendukung proses transaksi,
kebalik dari tabel transaction safe. Tabel jenis ini tidak ada toleransi jika terjadi
kesalahan ketika melakukan pemrosesan data.

MySQL memiliki 3 tipe tabel utama yang biasanya sering digunakan, yaitu: MyISAM, InnoDB,
dan HEAP.
1. Tipe Tabel 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. Terdapat tiga jenis tabel MyISAM, yaitu:
• MyISAM Static. Jenis ini digunakan ketika semua kolom dalam tabel
didefinisikan dengan ukuran yang pasti (fixed). Karena sifatnya yang fixed,
maka jenis ini akan lebih cepat, aman dan stabil.
• MyISAM dynamic. Jenis ini digunakan ketika terdapat kolom dengan tipe yang
dinamis, seperti tipe kolom Varchar. Keutungan utama dari jenis ini adalah
ukuran yang dinamis.
• MyISAM Compressed. Kedua jenis MyISAM, static dan dynamic dapat
dikompresi menjadi satu jenis yaitu MyISAM Compressed.

2. Tipe Tabel InnoDB


Tipe tabel InnoDB merupakan tipe tabel MySQL yang mendukung proses transaksi.
Tipe ini memiliki beberapa keunggulan, yaitu:
• Mendukung transaksi antar tabel.
• Mendukung melakukan penguncian (locking) pada tingkatan record
• Mendukung Foreign-Key Constraints.
• Mendukung transaksi seperti commit, rollback ataupun crash recovery.

3. Tipe Tabel HEAP


Tipe tabel dengan tipe HEAP tidak menyimpan datanya di hardisk, tetap menyimpan
di memori (RAM). Tipe tabel ini biasanya digunakan untuk tabel sementara
(temporary).

4. Tipe Tabel Lainnya


Beberapa jenis tipe tabel lainnya pada MySQL, yaitu:
• BDB, Merupakan tipe tabel yang mirip dengan InnoDB, namun penggunaannya
belum maksimal.
• Archieve. Tipe tabel ini tersedia sejak MySQL versi 4.1, Tipe ini digunakan untuk
menyimpan tabel yang terkompresi, dimana biasanya digunakan dalam proses
backup.
• CSV merupakan tipe tabel untuk menyimpan data dalam bentuk file text yang
dibatas dengan koma (delimiter).
• NDB Tabel (MySQL Cluster).
• Federated (External Tables).

Tipe Field (Kolom) My SQL


MySQL memiliki beberapa tipe data atau field atau kolom, setiap tipe-tipe field atau kolom
mysql ini menentukan besar kecilnya sebuah ukuran tabel. Ada beberapa tipe-tipe field atau
kolom pada mysql, seperti numeric, string, datetime/date/time, dan kelompok himpunan (set
dan enum). Berikut penjelasannya:
• Tipe Numeric
Tipe data numeric digunakan untuk menyimpan data numeric (angka). Ciri utama data
numeric adalah suatu data yang memungkinkan untuk dikenai operasi aritmatika
seperti pertambahan, pengurangan, perkalian dan pembagian.
Berikut ini tipe field (kolom) di MySQL yang termasuk ke dalam kelompok tipe numerik:
Nama Penggunaan Jangkauan Ukuran
TINYINT Digunakan untuk menyimpan data -128 s/d 127 1 byte (8 bit)
bilangan bulat positif dan negatif.
SMALLINT Digunakan untuk menyimpan data -32.768 s/d 32.767 2 byte (16 bit)
bilangan bulat positif.

2019 Sistem Basis Data Pusat Bahan Ajar dan eLearning


4 Tim Dosen http://www.undira.ac.id
MEDIUMINT Digunakan untuk menyimpan data -8.388.608 s/d 8.388.607 3 byte (24 bit)
bilangan bulat positif dan negatif.
INT Digunakan untuk menyimpan data -2.147.483.648 s/d 4 byte (32 bit)
bilangan bulat positif dan negatif. 2.147.483.647
BIGINT Digunakan untuk menyimpan data ± 9,22 x 1018 8 byte (64 bit)
bilangan bulat positif dan negatif.
FLOAT Digunakan untuk menyimpan data -3.402823466E+38 s/d - 4 byte (32 bit)
bilangan pecahan positif dan negatif 1.175494351E-38, 0, dan
presisi tunggal. 1.175494351E-38 s/d
3.402823466E+38
DOUBLE Digunakan untuk menyimpan data -1.79…E+308 s/d - 8 byte (64 bit)
bilangan pecahan positif dan negatif 2.22…E-308, 0, dan
presisi ganda. 2.22…E-308 s/d
1.79…E+308
REAL Merupakan sinonim dari DOUBLE.
DECIMAL Digunakan untuk menyimpan data -1.79…E+308 s/d - 8 byte (64 bit)
bilangan pecahan positif dan negatif. 2.22…E-308, 0, dan
2.22…E-308 s/d
1.79…E+308
NUMERIC Merupakan sinonim dari DECIMAL.

• Tipe String
Tipe data string digunakan untuk menyimpan data string (text). Biasanya tipe data ini
digunakan untuk menyimpan berbagai informasi berupa teks singkat atau isi suatu
artikel, dan lain-lain. Berikut ini tipe field di MySQL yang termasuk ke dalam kelompok
tipe string:
Nama Penggunaan Jangkauan
CHAR Digunakan untuk menyimpan data string 0 s/d 255 karakter
ukuran tetap.
VARCHAR Digunakan untuk menyimpan data string 0 s/d 255 karakter (versi 4.1), 0
ukuran dinamis. s/d 65.535 (versi 5.0.3)
TINYTEXT Digunakan untuk menyimpan data text. 0 s/d 255 karakter (versi 4.1), 0
s/d 65.535 (versi 5.0.3)
TEXT Digunakan untuk menyimpan data text. 0 s/d 65.535 (216 – 1) karakter
MEDIUMTEXT Digunakan untuk menyimpan data text. 0 s/d 224 – 1 karakter
LONGTEXT Digunakan untuk menyimpan data text. 0 s/d 232 – 1 karakter

2019 Sistem Basis Data Pusat Bahan Ajar dan eLearning


5 Tim Dosen http://www.undira.ac.id
• Tipe BLOB (Biner)
Tipe data blob digunakan untuk menyimpan data biner. Tipe ini biasanya digunakan
untuk menampung kode-kode biner dari suatu file atau object. BLOB merupakan
singkatan dari Binary Large Object. Berikut ini tipe field di MySQL yang termasuk ke
dalam kelompok tipe blob:
Nama Penggunaan Jangkauan
BIT Digunakan untuk menyimpan data biner. 64 digit biner
TINYBLOB Digunakan untuk menyimpan data biner. 255 byte
BLOB Digunakan untuk menyimpan data biner. 216 – 1 byte
MEDIUMBLOB Digunakan untuk menyimpan data biner. 224 – 1 byte
LONGBLOB Digunakan untuk menyimpan data biner. 232 – 1 byte

• Tipe Date
Tipe data date (tanggal) digunakan untuk menyimpan data yang berkaitan dengan
tanggal dan waktu. Tipe data date pada MySQL terdiri dari beberapa tipe data, yaitu:
DATE, DATETIME, TIME, TIMESTAMP, dan YEAR. Perbedaan antara tipe-tipe data
kelompok tanggal adalah pada format penyimpanan, ukuran penyimpanan serta
jangkauan.
Nama Penggunaan Jangkauan Ukuran Format Input
DATE Digunakan 1000-01-01 to 3 byte CCYY-MM-DD
untuk 9999-12-31 YY-MM-DD
menyimpan CCYYMMDD
data tanggal. YYMMDD
DATETIME Digunakan 1000-01-01 8 byte CCYY-MM-DD
untuk 00:00:01 to hh:mm:ss
menyimpan 9999-12-31
data tanggal 23:59:59
dan waktu.
TIMESTAMP Digunakan 1970-01-01 4 byte YY-MM-DD hh:mm:ss
untuk 00:00:00 to CCYYMMDDhhmmss
menyimpan 2038-01-18 YYMMDDhhmmss
data tanggal 22:14:07
dan waktu.

TIME Digunakan 838:59:59 to 3 byte hh:mm:ss

2019 Sistem Basis Data Pusat Bahan Ajar dan eLearning


6 Tim Dosen http://www.undira.ac.id
untuk 838:59:58 hhmmss
menyimpan
data waktu.
YEAR(2) Digunakan 00 to 99 1 byte YY
untuk
menyimpan
data tahun.
YEAR(4) Digunakan 1901 to 2155 1 byte CCYY
untuk
menyimpan
data tahun.

Keterangan:
o CCYY : digunakan untuk input tahun, YY berupa tahun 2 digit, sedangkan
untuk CCYY adalah tahun dengan 4 digit, seperti 1988. Untuk tahun dengan 2
digit, MySQL mengkonversinya dengan aturan 70-99 menjadi 1970-1999 dan
00-69 menjadi 2000-2069.
o MM : digunakan untuk input bulan dalam format dua digit, seperti 01, 08, dan
12.
o hh : digunakan untuk input jam dalam format 2 digit.
o mm : digunakan untuk input menit dalam format 2 digit.
o ss: digunakan untuk input detik, dalam format 2 digit.

• Tipe Data Lainnya


Selain tipe data di atas, MySQL juga menyediakan tipe data yang lain. Tipe data di
MySQL mungkin akan terus bertambah seiring dengan perkembangan versi MySQL.
Berikut ini beberapa tipe data tambahan MySQL:
Nama Penggunaan Jangkauan
ENUM Enumerasi (kumpulan data). Sampai dengan 65535 string.
SET Combination (himpunan data). Sampai dengan 255 string
anggota

Tipe Operator MySQL


MYSQL mendukung penggunaan operator-operator dan fungsi-fungsi diantaranya:

2019 Sistem Basis Data Pusat Bahan Ajar dan eLearning


7 Tim Dosen http://www.undira.ac.id
• Operator Aritmetika
Suatu ekspresi yang melibatkan tipe data bilangan (NUMERIK) dan tanggal (DATE)
menggunakan ekspresi aritmatika. Dapat dilihat pada tabel berikut berikut ini:
Operator Keterangan
+ Tambah
- Kurang
* Kali
/ Bagi
Mod () Modulus

• Operator Pembandingan
Suatu ekspresi yang dapat digunakan pada klausa WHERE dan mempunyai sintax
sebagai berikut: WHERE expr operator value. Tabel berikut menunjukan operator
pembanding pada MYSQL berikut ini:
Operator Keterangan
= Sama Dengan
> Lebih Besar
< Lebih Kecil
>= Lebih Besar atau Sama Dengan
<= Lebih Kecil atau Sama Dengan
<> Tidak Sama Dengan

• Operator Logika
Operator ini digunakan untuk membandingkan dua nilai variabel yang bertipe boolean.
Tabel berikut menunjukkan operator logika pada MYSQL:
Operator Keterangan
AND Dan
OR Atau
NOT Tidak

• Operator Karakter
Operator untuk membentuk pencarian string yang sesuai dengan nilai yang
mencantumkan pada kondisi. Kondisi pencarian dapat berisi karakter , ada 3 simbol
khusus berikut ini dapat dilihat pada tabel berikut ini:
2019 Sistem Basis Data Pusat Bahan Ajar dan eLearning
8 Tim Dosen http://www.undira.ac.id
Operator Keterangan
% Sembarang karakter berapapun jumlahnya
_ Sembarang satu karakter
[] Sembarang karakter yang terletak dalam kurung siku

• Operator Lain-lain
Operator yang digunakan untuk menguji nilai-nilai yang ada dalam list (tanda kurung)
dan dapat juga untuk menampilkan baris berdasarkan suatu jangkauan (range) nilai.
Ada 2 simbol tersebut dapat dilihat pada tabel berikut ini:
Operator Keterangan
IN Dalam
BETWEEN Diantara

• Fungsi Agregat
Fungsi agregat adalah fungsi yang disedikan oleh SQL untuk menghasilkan sebuah
nilai berdasarkan sejumlah data. Fungsi sendiri adalah seuatu kumpulan instruksi yang
menghasilkan sebuah nilai jika dipanggil. Fungsi ini juga digunakan pada data numeric
untuk menghitung nilai baik rata-rata dan jumlah dari sekumpulan data maupun
pencarian jumlah baris dalam tabel. Untuk lebih jelasnya dapat dilihat dalam tabel
berikut ini:
Operator Keterangan
COUNT Menghitung jumlah baris suatu field
SUM Menjumlahkan data-data numerik pada suatu tabel
AVG Menghitung rata-rata suatu field
MAX Menghitung nilai maksimum suatu field
MIN Menghitung nilai minimum suatu field

2019 Sistem Basis Data Pusat Bahan Ajar dan eLearning


9 Tim Dosen http://www.undira.ac.id
Aturan Merancang Database
Perancangan database menentukan suatu aplikasi efektif atau tidak, efisien atau tidak, baik
atau tidak.
Beberapa Aturan Merancang Database yang Baik:
• Tabel dalam database tidak boleh mengandung record (data) ganda, atau dengan kata
lain tidak boleh ada redudancy data. Jika terdapat data yang sama, maka perlu dilihat
kembali rancangan tabelnya.
• Setiap tabel dalam database, harus memiliki field (kolom) yang unik. Field ini disebut
sebagai Primary Key.
• Tabel harus sudah normal.
• Besar atau ukuran database hendaknya dibuat seminimal mungkin. Hal ini ditentukan
oleh pemilihan tipe data yang tepat.
• Merancang database hendaknya memperhatikan apakah rancangan dapat
menampung data (record) sesuai yang dibutuhkan oleh aplikasi.

Tips Penamaan Identifier.


• Penamaan identifier (database, tabel, kolom) di MySQL bersifat casesensitive.
Penamaan identifier hendaknya konsisten untuk semua tabel dalam suatu database.
Kita dapat menggunakan model lower-case, UPPER-CASE, camelCase dll.
• Nama database, tabel dan kolom maksimal 64 karakter.
• Hindari penggunaan karakter khusus, seperti üàû, karena bisa bermasalah dalam
sistem operasi yang lain.
• Pilih nama untuk field (kolom) yang mencerminkan isi dari data yang disimpan.

2019 Sistem Basis Data Pusat Bahan Ajar dan eLearning


10 Tim Dosen http://www.undira.ac.id
DAFTAR PUSTAKA
Database system: A Practical approach to design, implementation and management
Sistem Manajemen Basis Data
Oracle database 10g: SQL Fundamentals I

2019 Sistem Basis Data Pusat Bahan Ajar dan eLearning


11 Tim Dosen http://www.undira.ac.id

Anda mungkin juga menyukai