• Dari query DESC dapat dilihat kolom mini dan kecil, secara otomatis akan bersisi nilai M,
walaupun dalam deklarasi pembuatan tabel tidak dinyatakan secara langsung. Nilai ini
didapat dari jangkauan terbesar untuk tipe data tersebut
• Perintah INSERT dan SELECT akan dipelajari lebih detail pada materi berikutnya.
• Dari contoh di atas didapat gambaran bagaimana cara deklarasi tipe data integer. Perhatikan
untuk kolom sedang dan besar, terdapat angka nol di depan angka. Hal ini karena kedua kolom
tersebut dideklarasikan sebagai ZEROFILL.
• Maksimal nilai untuk M adalah 65, dan maksimal nilai D adalah 30. Dengan syarat, nilai D tidak
boleh lebih besar dari nilai M. Jika M dan D tidak disertakan dalam mendefinisikan suatu
kolom DECIMAL, maka secara default M akan di set 10. Dan D di set 0. Tipe data DECIMAL cocok
digunakan salah satunya untuk kolom yang difungsikan untuk menampung nilai mata uang.
• Opsional query UNSIGNED disertakan jika hanya ingin menghilangkan nilai negatif dari DECIMAL,
tanpa memperbesar jangkauannya. Opsional query ZEROFILL sama seperti integer, akan mengisi
angka 0 pada bagian kiri angka.
• Perhatikan kolom normal, bahwa nilai DECIMAL dideklarasikan sebagai DECIMAL(10,0), ini adalah
default MySQL jika jumlah digit tidak dituliskan.
• Khusus untuk kolom normal, karena deklarasinya adalah DECIMAL (10,0), maka seluruh digit
dibelakang koma dari inputan ditiadakan.
• Selain menggunakan DECIMAL untuk fixed point, MySQL juga menyediakan beberapa nama lain
yaitu: NUMERIC, FIXED dan DEC. Pilihan ini disediakan agar MySQL tetap sesuai dengan standard
SQL yang digunakan pada berbagai RDBMS lain, seperti Oracle.
24/04/2020 Praktikum Basis Data 2 - Alif Finandhita, S.Kom., M.T. 12
TIPE FLOATING POINT : FLOAT DAN DOUBLE
• Jika pada tipe fixed point, suatu kolom didefinisikan dengan nilai
pecahan yang tetap, maka untuk tipe floating point, nilai pecahan
yang dapat diinput bisa berbeda-beda.
• Untuk tipe floating point, MySQL menyediakan 2 jenis tipe data,
yaitu FLOAT dan DOUBLE. Perbedaan keduanya terletak
pada presisi (ketelitian) pembulatan. FLOAT menggunakan single-
precision, sedangkan DOUBLE menggunakan double-precision.
• Tipe Floating Point juga diperuntukkan untuk nilai desimal,
perbedaan antara Fixed Point dengan Floating Point adalah arsitektur
(cara perhitungannya pada prosesor komputer) dan ketelitian (presisi)
yang digunakan.
24/04/2020 Praktikum Basis Data 2 - Alif Finandhita, S.Kom., M.T. 13
TIPE FLOATING POINT : FLOAT DAN DOUBLE
(2)
Tipe Data Jangkauan Ukuran
FLOAT -3.402823466E+38 to 4 bytes
3.402823466E+38
DOUBLE -1.7976931348623157E+308 8 bytes
to
1.7976931348623157E+308
Ukuran Ukuran
Data CHAR(4) VARCHAR(4)
Peyimpanan Peyimpanan
'' ' ' 4 byte '' 1 byte
‘in' ‘in ' 4 byte ‘in' 3 byte
‘info' ‘info' 4 byte ‘info' 5 byte
‘informatika' ‘info' 4 byte ‘info' 5 byte
• Dari tabel diatas, dapat dilihat bahwa ukuran penyimpanan untuk VARCHAR berubah-ubah
tergantung data yang diinput. VARCHAR membutuhkan 1 byte tambahan untuk menyimpan
panjang data. Jika suatu kolom didefiniskan sebagai VARCHAR(4) dan nilai ‘dunia’ diinputkan pada
kolom tersebut, maka dibutuhkan penyimpanan sebesar 4+1 byte. Berbeda dengan CHAR(4) yang
tidak membutuhkan tambahan byte.
• Setiap tipe data teks disimpan berdasarkan berapa data yang diinput. Karakteristiknya sama
seperti VARCHAR, dimana jika kolom didefinisikan sebagai LONGTEXT dan hanya berisi 100
karakter, maka ukuran penyimpanan yang digunakan sekitar 100 byte, bukan 4GB.
• Karena sifatnya yang tersimpan secara binary,tipe data BLOB dapat digunakan untuk
menyimpan data multimedia, seperti gambar dan musik ke dalam tabel MySQL.
• Dapat dilihat bahwa dengan tipe data tersebut maka nilai yang akan ditampilkan dengan perintah
SELECT adalah nilai bit dari teks yang diinputkan
• Khusus untuk tipe data YEAR, fungsi NOW() tidak dapat digunakan, oleh karena itu diisi
manual dengan nilai ‘2020’.
• Tipe data tanggal (date) bukanlah tipe data dasar, tetapi sangat umum dan sering
digunakan.
24/04/2020 Praktikum Basis Data 2 - Alif Finandhita, S.Kom., M.T. 38
TIPE DATA ENUM DAN SET PADA MySQL