Type data pada database


Tipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan dalam pemrograman komputer. Setiap variabel atau konstanta yang ada dalam kode program, sebaiknya kita tentukan dengan pasti tipe datanya. Ketepatan pemilihan tipe data pada variabel atau konstanta akan sangat menentukan pemakaian sumberdaya komputer (terutama memori komputer). Salah satu tugas penting seorang programmer adalah memilih tipe data yang sesuai untuk menghasilkan program yang efisien dan berkinerja tinggi. sebab jika kita salah/tidak sesuai kebutuhan dalam pembagian type data, maka akibatnya sangat fatal, diantaranya yaitu pengolokan memory pada penyimpanan data, atau malah kekurangan penyimpanan memory, dan itu sangat fatal.

Ada banyak tipe data yang tersedia, diantaranya sebagai berikut


NoTypeKeteranganPanjang Karakter
1.TINYINTBerarti integer dengan range yang sangat kecil yaitu –2 sampai 2 , -1 atau 0 sampai 2. -1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 1 byte.0 hingga 255
2.SMALLINTBerarti integer dengan range yang kecil yaitu –2 sampai 2, -1 atau 0 sampai 2.
-1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 2 byte.
0 hinga 65535
3.MEDIUMINTBerarti integer dengan range yang sangat kecil yaitu –2 sampai 2, -1 atau 0 sampai 2. -1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 3 byte.0 hingga 16777215
4.INTBerarti integer dengan range yang normal yaitu –2 sampai 2, -1 atau 0 sampai 2.
-1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 4 byte.
0 hingga 4294967295.
5.BIGINTBerarti integer dengan range yang sangat kecil yaitu –2 sampai 2, -1 atau 0 sampai 2. -1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 8 byte.0 hingga 18446744073709551615
6.FLOATBerarti floating-point dengan range kecil yaitu antara +1.175494351E-38
sampai +3.402823466E+38 serta dengan single presisi. Atribut yang dibolehkan adalah ZEROFILL. Harga default NULL jika bisa atau 0 jika NOT NULL. Tempat penyimpanan 4 byte.
25 dan 53
7.DOUBLEBerarti floating-point dengan range besar yaitu antara +2.22507385072014E-308 sampai +1.7976931348623157E308 serta dengan double presisi. Atribut yang dibolehkan adalah ZEROFILL. Harga default NULL jika bisa atau 0 jika NOT NULL. Tempat penyimpanan 8 byte.0, dan 2.2250738585072014E-308 hingga 1.7976931348623157E+308 untuk nilai positif
8.DECIMALBerarti floating-point yang tersimpan sebagai string (1 byte untuk setiap digit, tanda desimal, atau tanda ’-‘). Range harga sama seperti .DOUBLE. Atribut yang dibolehkan adalah ZEROFILL. Tempat penyimpanan sebesar 9Mbyte. Jika D diisi 0 berarti tidak punya nilai desimal.99,99
9.CHAR(M)Karakter dengan panjang 0 sampai Mbyte. Atribut yang dibolehkan adalah BINARY. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat pemyimpanan Mbyte1 hingga 255
10.VARCHAR Variabel karakter dengan panjang 0 sampai Mbyte. Atribut yang dibolehkan adalah BINARY. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat pemyimpanan M+1 byte.1 hingga 255
11.TINYTEXTTeks berukuran kecil dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 1 byte255
12.TEXTTeks yang normal dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 2 byte.65535
13.MEDIUMTEXTTeks berukuran sedang dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 3 byte.16777215
14.LONGTEXTTeks berukuran besar dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 4 byte.429496729
15.ENUMBerarti kolom hanya boleh diisi dengan salah satu dari harga yang ada. Harga default adalah NULL jika bisa atau harga1 jika NOT NULL. Tempat penyimpanan adalah 1 byte untuk enumerasi dengan anggota 1 sampai 255 dan 2 byte untuk enumerasi dengan anggota 256 sampai 65535.65535
16.SETBerarti kolom boleh dikosongi atau diisi dengan beberapa harga dari daftar harga yang ada. Harga default adalah NULL jika bisa atau ” “ jika NOT NULL. Tempat penyimpanan adalah 1 byte untuk set dengan anggota 1 sampai 8, 2 byte untuk set dengan anggota 9 sampai 16, 3 byte untuk set dengan anggota 17 sampai 24, 4 byte untuk set dengan anggota 25 sampai 32, atau 8 byte untuk set dengan anggota 33 sampai 64.64
17.DATEUntuk kolom tanggal dengan format YYYY-MM-DD dan range antara “1000- 01-01” sampai “9999-12-31”. Harga default adalah NULL jika bisa atau “0000- 00-00” jika NOT NULL. Tempat penyimpanan 3 byte.1000-01-01 hingga 9999-12-31
18.TIME Untuk kolom jam dengan format hh:mm: ss atau -hh:mm: ss untuk harga negatif. Range harga antara “-838:59:59” sampai “838:59:59”. Harga default adalah NULL jika bisa atau “00:00:00” jika NOT NULL. Tempat penyimpanan 3 byte.1970-01-01 00:00:0
19.DATETIMEGabungan antar hari dan jam dengan format YYYY-MM-DD hh:mm: ss dan range antar “1000-01-01 00:00:00” sampai “9999-12-31 23:59:59”. Harga default adalah NULL jika bisa atau “0000-00-00 00:00:00” jika NOT NULL. Tempat penyimpanan 8 byte.1000-01-01 00:00:00 hingga 9999-12-31 23:59:59
20.TIMESTAMP Hampir sama dengan DATETIME tapi dengan format YYYYMMDD hhmmss dan range antara 19700101000000 sampai suatu saat di tahun 2037. Harga default adalah hari dan jam saat itu. Tempat penyimpanan 4 byte.1970-01-01 00:00:00
21.YEARUntuk kolom tahun denga format YYYY dan range antara 1900 sampai 2155. Harga default adalah NULL jika bisa atau 0000 jika NOT NULL. Tempat penyimpanan 3 byte.1901 hingga 2155, 0000
22.Data kosong (NULL)NULL berarti kosong atau tidak diisi data atau bisa juga berarti data yang tidak jelas, data yang hilang ataupun yang lainnya
23.NUMERICMySQL dapat menerima masukan berupa angka-angka yang dibagi atas integer (angka tanpa pecahan) dan floating-point (angka dengan pecahan). MySQL juga mengerti notasi scientific yaitu integer atau floating-point yang diikuti tanda ‘e’ atau ‘E’, tanda ‘+’ atau ‘-‘. Misalnya angka 1.34E+12 atau 3.23e-5.
Tipe ini untuk harga integer dan floating-point. Untuk integer kolom haruslah PRIMARY KEY atau indeks yang unik jika ia diberi atribut AUTO_INCREMENT (dapat otomatis mengurutkan angka). Jika diberikan atribut UNSIGNED berarti angka tidak boleh negatif. Sedangkan atribut ZEROFILL menandakan bahwa angka diawali dengan angka nol.
99,99
24.TYNYBLOBSebuah BLOB (semacam catatan) atau TEXT dengan lebar maksimum 255 (2^8 – 1) karakter.255
25.BLOBSebuah BLOB atau TEXT dengan lebar maksimum 65535 (2^16 – 1) karakter.65535
26.MEDIUMBLOBSebuah BLOB atau TEXT dengan lebar maksimum 16777215 (2^24 – 1) karakter.16777215
27.LONGBLOBSebuah BLOB atau TEXT dengan lebar maksimum 4294967295 (2^32 – 1) karakter.4294967295


Oke, mudah-mudahan artikel ini bermanfaat :)

Post a Comment