Monday, August 18, 2014

Memilih Tipedata yang baik, pada MySQL database

MySQL mendukung beberapa tipe data yang dikelompokkan menjadi tiga bagian :
- Numerik (Angka)
- Date dan time (tanggal dan jam)
- String (Huruf)
Tipe Data Numerik
MySQL mendukung semua tipe data numerik standar SQL. Di antaranya adalah tipe data exact (INTEGER, SMALLINT, DECIMAL, and NUMERIC), juga tipe data perluasannya (FLOAT, REAL, and DOUBLE PRECISION).
Berikut adalah tipe data numerik utama dan batasan nilainya.

Type Storage Minimum Value Maximum Value

(Bytes) (Signed/Unsigned) Signed/Unsigned)
TINYINT 1 -128 127


0 255
SMALLINT 2 -32768 32767


0 65535
MEDIUMINT 3 -8388608 8388607


0 16777215
INT 4 -2147483648 2147483647


0 4294967295
BIGINT 8 -9223372036854775808 9223372036854775807


0 18446744073709551615
Disamping tipe data numerik di atas juga terdapat perluasan tipe data di atas
1. Floating-point
Yang termasuk dalam tipe ini adalah FLOAT(M,D), REAL(M,D), DOUBLE(M,D). M adalah panjang numeriknya sedangkan D adalah nilai desimalnya di belakang koma.
2. Fix-point
Termasuk dalam kategori ini adalah DECIMAL(M,D). Jika disebutkan DECIMAL(M) tanpa penulisan D, maka D dianggap 0 yang berarti tanpa ada angka dibelakang koma.
3. Bit-value
Tipe data bit-value adalah BIT(M), nilainya adalah nilai binary digit dari 0 sampai dengan 64.
4. Atribut Numerik
Dari tipe data utama di atas dapat didefiniskan secara khusus berapa panjangnya INT(N). Misal INT(2), yang berarti INTEGER dengan 2 bit data.
Disamping penggunaan di atas, tipe numerik juga menyediakan metode AUTO_INCREMENT yang otomatis menaikkan nilainya (squence) ketika terjadi penambahan record. Ketika di set AUTO_INCREMENT otomatis data tersebut akan mempunyai atribut UNSIGNED.
Atribut SIGNED berarti data memungkinkan bertanda minus (-), sedangkan UNSIGNED berarti data tidak boleh minus (-).
Jadi, setelah kita mengetahui tipe data ini, kita dapat menentukan tipe data apa yang cocok dengan data yang kita hendaki. Sesuaikan dengan panjang data atau jenis datanya, dengan pemilihan tipe data yang bijak tentu akan lebih meningkatkan performa dan tidak menyia-nyiakan penggunaan memori yang tidak perlu. Sebagai contoh, jangan pernah membuat tipe data numerik pada data yang tidak pernah dilakukan perhitungan, meskipun berupa angka data tersebut, semisal nomor telepon ato nomor induk.

0 comments:

Post a Comment