Setiap tabel di dalam diagram relasi tabel yang telah disusun pada tahap sebelumnya digunakan
sebagai acuan untuk menyusun kamus data. Kamus data, kemudian digunakan pula sebagai
acuan untuk membentuk fisik tabel di dalam basis data. Oleh karena itu, kamus data memiliki
peranan penting untuk membangun basis data, namun sering kali dilewati oleh para perancang
basis data pemula.
Penyusunan kamus data membutuhkan 2 hal, yaitu pengetahuan tentang tipe data dan Panjang
data yang digunakan. Tipe data sangat bergantung kepada jenis engine basis data yang
digunakan, namun dari berbagai macam jenis engine basis data, memiliki konsep tipe data yang
sama. Secara umum, tipe data di dalam basis data dikelompokkan menjadi 3 yaitu CHARACTER
STRING, NUMERIC dan DATE-TIME.
CHAR Tipe data untuk huruf, angka dan karakter khusus dengan panjang
data yang tetap, mulai dari 0 sd 255
VARCHAR Tipe data untuk huruf, angka dan karakter khusus dengan panjang
data yang tetap, mulai dari 0 sampai 65535
BINARY Tipe data yang sama dengan CHAR, tapi digunakan untuk
menyimpan huruf, angka dan karakter khusus dalam bentuk
bilangan biner
VARBINARY Tipe data yang sama dengan VARCHAR, tapi digunakan untuk
menyimpan huruf, angka dan karakter khusus dalam bentuk
bilangan biner
TINYBLOB Tipe data untuk menyimpan berkas gambar. Tipe data BLOB
(Binary Large Objects) memiliki panjang data 255 bytes
TINYTEXT Tipe data untuk teks dengan panjang data maksimum 255
karakter
TEXT Tipe data untuk teks dengan panjang data 65.535 bytes
BLOB Tipe data untuk menyimpan berkas gambar. Tipe data BLOB
(Binary Large Objects) memiliki panjang data maksimal sampai
65.535 bytes of data
M o d u l P e r k u l i a h a n D B M S | 49
MEDIUMTEXT Tipe data untuk menyimpan data teks dengan panjang data
maksimal 16.777.215 karakter
MEDIUMBLOB Tipe data untuk menyimpan berkas gambar. Tipe data BLOB
(Binary Large Objects) memiliki panjang data maksimal
16.777.215 bytes
LONGTEXT Tipe data untuk menyimpan data teks dengan panjang data
maksimal 4.294.967.295 karakter
LONGBLOB Tipe data untuk menyimpan berkas gambar. Tipe data BLOB
(Binary Large Objects) memiliki panjang data maksimal
4.294.967.295 bytes
ENUM Tipe data string dalam format objek / list / daftar, yang hanya
memiliki satu nilai saja. Nilai tersebut diperoleh dari pilihan
beberapa opsi nilai yang telah disediakan. Maksimal jumlah
pilihan sebanyak 65.535
SET Tipe data seperti ENUM, namun memiliki lebih dari 1 nilai
BIT Tipe data bit (biner) dengan ukuran panjang data mulai 1
sampai dengan 64 bit
BOOL Tipe data Bool memiliki 2 bentuk nilai, sama dengan nol dan
bukan nol. Jika data bernilai = 0, maka dikategorikan FALSE,
sedangkan jika bukan 0 maka dikategorikan TRUE
BOOLEAN Tipe data Boolean dengan dua macam nilai, TRUE atau FALSE
SMALLINT Tipe data jenis integer yang memiliki ukuran terkecil kedua
setelah TINYINT dibandingkan jenis integer lain yaitu
maksimal 255. Nilai data terkecilnya mulai dari -32768
sampai maksimal 32767
M o d u l P e r k u l i a h a n D B M S | 50
BIGINT Tipe data yang sama dengan INT namun memiliki jangkauan
nilai data yang lebih banyak yaitu -9.223.372.036.854.775.808
to 9.223.372.036.854.775.807.
FLOAT(p)
Tipe data untuk bilangan bulat puluhan ratusan, ribuan dan
DOUBLE seterusnya. Jika panjang datanya mulai dari 0 sampai 24
maka termasuk tipe data float. Jika pangjang data mulai 25
DOUBLE sampai 53, maka termasuk tipe data DOUBLE
PRECISION
DATETIME Tipe data untuk data tanggal dan jam dengan format data:
YYYY-MM-DD hh:mm:ss, mulai dari 1000-01-01 00:00:00
sampai 9999-12-31 23:59:59
M o d u l P e r k u l i a h a n D B M S | 51
TIME Tipe data jam / waktu dengan format: hh:mm:ss, mulai dari
nilai -838:59:59 sampai 838:59:59
YEAR Tipe data tahun dengan format 4 digit angka, mulai tahun 1901
sampai 2155, dan 0000.
Kamus data (data dictionary) adalah rincian tentang tipe data dan panjang data dari sebuah
tabel yang disusun berdasarkan diagram relasi tabel. Contoh kamus data ditunjukkan pada tabel
8.4.
Tabel 8.4 Contoh Kamus Data
Nama Tabel: Barang
Jenis Panjang
Nama Field Tipe Data Contoh
Kunci Data
kode_barang PK String 6 B001, C999
kategori - String 20 Beras, Tepung
Merk - String 20 Rosebrand
Satuan - String 6 Kg, Liter, Buah
harga - INT 7 1000,10000
Tabel 8.4 menunjukkan kamus data untuk tabel dengan nama tabel “Barang”. Sebuah kamus
data berbentuk tabel, yang terdiri dari minimal 5 kolom sebagai berikut:
1) Kolom Nama Field: berisikan semua field yang ada di sebuah tabel
2) Kolom Jenis Kunci: berisikan jenis field, Primary Key (PK) dan atau Foreign Key (FK)
3) Kolom Tipe Data: berisikan tipe data dari field
4) Kolom Panjang Data: berisikan panjang data
5) Kolom Contoh: berisikan contoh nilai data
Hal yang perlu diperhatikan dalam penyusunan basis data adalah tentang pemberian nama
tabel dan field yang hanya berupa satu kata atau gabungan dari beberapa kata tanpa ada spasi.
M o d u l P e r k u l i a h a n D B M S | 52
Query dapat diartikan sebagai permintaan dari pengguna basis data untuk mengelola basis
data. Structured Query Language (SQL) adalah bahasa pemrograman yang khusus digunakan
untuk pengelolaan basis data. Seperti halnya bahasa pemrograman lainnya, SQL memiliku
susunan atau format perintah khusus untuk menjalankan fungsi-fungsi tertentu. Fungsi SQL
dikelompokkan menjadi 3 sesuai dengan tujuan penggunaannya yaitu Data Definition Language
(DDL), Data Manipulation Language (DML) dan Data Control Language (DCL)
Penulisan query untuk semua jenis command dapat dilakukan dalam satu baris atau
beberapa baris. Pada contoh sebelumnya, query ditulis dalam beberapa baris untuk
memudahkan mengenali maksud setiap barisnya. Query juga tidak dipengaruhi
huruf besar atau huruf kecil.
2) ALTER
Command ALTER digunakan untuk memodifikasi atau mengubah struktur tabel. Bentuk
modifikasi yang dapat dilakukan adalah sebagai berikut:
a) Menambah field / kolom
Misalkan dari kamus data pada tabel 8.4, kita akan mengubah urutan kolom merk
menjadi setelah kolom harga:
ALTER TABLE barang
Contoh: CHANGE COLUMN merk merk string(30) NULL
AFTER harga
Jika posisi kolom/field yang akan dipindahkan berada di sebelum field lain, maka
perintah AFTER diganti dengan FIRST. Misalkan dari kamus data pada tabel 8.4, kita
akan mengubah urutan ke posisi ke 2, sebelum field kategori:
ALTER TABLE barang
Contoh: CHANGE COLUMN merk merk string(30) NULL
FIRST kategori