Macam-macam Tipe Data (Data Type) pada Database

Darma Kusumandaru 4/25/2020

Melanjutkan artikel tentang database pada artikel kali ini saya akan membahas suatu hal yang tidak kalah penting yang perlu diketahui oleh Programmer dan Sistem Analisis untuk merancang database yaitu adalah tipe data (datatype).

Untuk seorang Programmer seharusnya sudah nir asing lagi menggunakan tipe data, lantaran di aneka macam macam bahasa pemrograman dalam biasanya jua masih ada tipe data yg dipakai untuk meng-inisialisasi-kan atau mendeklarasikan suatu variable. Tipe data yang diinisialisasikan dalam suatu variable akan menaruh suatu batasan dalam variabel tadi buat dapat menyimpan suatu data.

Apa itu Tipe Data?

Data Type atau Tipe Data adalah suatu kelengkapan (attribute) pada suatu yang digunakan untuk mengidentifikasi tipe atau jenis suatu data atau variabel tersebut. Suatu data yang telah didefinisikan tipe data-nya maka data tersebut memiliki suatu identitas yang berupa operasi apa saja yang memungkinkan untuk dilakukan oleh data tersebut.

Dalam Database Data Type adalah suatu fungsi (function) yang digunakan untuk mengidentifikasi batasan suatu kolom dalam menyimpan dan penulisan format suatu data atau konten tertentu.

Penggunaan typedata pada database mempunyai beberapa fungsi yaitu :

  • Untuk memberikan batasan atau format pada kolom table suatu database.
  • Untuk membatasi data yang di-insert pada suatu kolom.
  • Memberikan dampak hasil yang konsisten pada suatu kolom.

Pada database tipe data terlihat seperti fungsi / function pada umumnya di pemrograman, oleh karena itu terdapat tipe data pada database yang wajib anda set / menentukan nilai parameter, dan ada juga tipe data yang tidak memerlukan parameter.

Parameter pada tipe data ini digunakan untuk menentukan jumlah character berapa batas maksimal dari jumlah character. Ada juga parameter yang digunakan untuk mem-fix-kan jumlah character misal 5, maka tidak boleh kurang dan tidak boleh lebih. Untuk tipe data boolean parameter nya digunakan utnuk mendefinisakan option atau pilihan dari suatu kasus yang logic.

Contoh tipe data yg perlu dipengaruhi parameter nya

id INT(dua)

username VARCHAR (20)

Contoh tipedata yg tidak perlu ditentukan parameter nya

birthday DATE

address TEXT

Pada artikel ini yg akan saya ambil sebagai bahasan merupakan tipe data pada DBMS MYSQL lantaran saya lebih acapkali menggunakan MYSQL buat membangun & mengembangkan aplikasi atau software sebagai akibatnya lebih familiar menggunakan MYSQL.

Pada database  terdapat 5 jenis tipe data itu di kelompokan berdasarkan fungsinya, yaitu String, numeric, Date, Boolean, dan Binary. Berikut masing-masing penjelasan dari tipe data, dan contoh dari tipe data pada DBMS MYSQL :

1. Tipe Data String

String adalah tipe data yang digunakan pada kolom yang menyimpan data dalam bentuk huruf atau character, kalimat, text, dan semacamnya. Kolom yang diinisialisaikan tipe datanya berupa string maka dapat juga menyimpan data dalam bentuk Source code, HTML, XML, JSON dan semacamnya dengan format text tertentu misal UTF8. Berikut ini beberapa contoh tipedata string yang dapat anda guanakan di DBMS MYSQL :

Tabel Tipe Data String
Tipe DataFungsi
CHARMenyimpan data string (huruf, angka, spesial karakter) ukuran panjang karakter atau digit huruf yang tetap. memiliki kapasitas jangkauan 0 s/d 255 karakter.
VARCHARMenyimpan String dengan digit huruf yang dinamis dan jumlah maksimal yang telah ditentukan. Dengan kapasitas jangkauan 0 s/d 65535 karakter.
TEXTMenyimpanString dengan panjang maksimal  65.535 bytes
TINYTEXTMenyimpan String dengan panjang maksimal 255 karakter
MEDIUMTEXTMenyimpan data berupaString dengan panjang maksimal 16,777,215 karakter
LONGTEXTMenyimpan data berupaString dengan panjang maksimal 4,294,967,295 karakter

2. Tipe Data Numeric / Angka

Numeric, dari namanya sudah pasti numeric berarti digunakan pada kolom yang menyimpan data berupa angka. Tipe Data numeric memiliki beberpa format penulisan mislakan bilangan desimal, bilangan bulat, dll. Berikut ini beberapa contoh format dari tipe data numeric :

Tabel Tipe Data Numeric (Angka)
Tipe DataFungsiJangkauan / Range
INTMenyimpan data dalam bentuk Interger atau bilangan bulat dapat bernilai positif atau negatif.-2147483648 s/d 2147483647
TINYINT-128 s/d 127
SMALLINT-32.768 s/d 32.767
MEDIUMINT-8.388.608 s/d 8.388.607
BIGINT-9223372036854775808 s/d 9223372036854775807
FLOATMenyimpan data bilangan pecahan positif atau negatif3.402823466E+38 s/d -1.175494351E-38, 0, dan 1.175494351E-38 s/d 3.402823466E+38.
DOUBLE-1.79…E+308 s/d -2.22…E-308, 0, dan 2.22…E-308 s/d 1.79…E+308
DECIMAL / NUMERIC-1.79…E+308 s/d -2.22…E-308, 0, dan 2.22…E-308 s/d 1.79…E+308

3. Tipe data Date (Waktu)

Date adalah tipe data untuk kolom yang digunakan untuk menyimpan data yang memiliki format waktu bisa berupa tanggal atau pun jam.

Tabel Tipe Data Date (Waktu)
Tipe DataFungsiJangkauan (Range)
DATEMenyimpan data tanggal dengan Format (YYYY-MM-DD), Tahun-Bulan-Hari.1000-01-01 s/d 9999-12-31
TIMEMenyimpan data dalam bentuk waktu dengan Format (HH:MM:SS), Jam, Menit, Detik.-838:59:59 s/d +838:59:59
DATETIMEMenyimpan data Tanggal dan Waktu1000-01-01 00:00:00 s/d 9999-12-31 23:59:59
YEARMenyimpan data Tahun1900 s/d 2155

4. Tipe Data Binary

Binary adalah tipe data yang memungkinkan suatu kolom database dapat menyimpan suatu binary file, Misalkan :

  1. Document : Text Document(*.doc, *.odf), sparesheet (*.xls, *.ods)
  2. Multi Media : Gambar (*.jpg, *.png, *.gif), video (*.mp4, *.mkv), music (*.mp3, *.acc)

Berikut tabel beberapa contoh tipe data binary yang dapat digunakan pada DBMS MYSQL :

Tabel Type Data Binary
Tipe DataFungsiKapasitas
BLOBBinary Large OBjects untuk menyimpan data berupa binary object.65.535 bytes
TINYBLOB255 bytes
MEDIUMBLOB16.777.215 bytes
LONGBLOB4.294.967.295 byte

5. Tipe Data Boolean

Tipe Data Boolean adalah suatu tipe data yang sifatnya seperti if-else atau if-else-if menungkinkan suatu kolom untuk memiliki pilihan data untuk disimpan. Jadi dengan penerapan tipe data boolean ini memungkinkan untuk menolak insert data yang nilainya diluar pilihan.

Tabel Type Data Boolean
Tipe DataFungsi
BOOLEANMembadingkan tipe data numberic 0 = False, dan 1 = True.
ENUMMenyimpan data dalam bentuk String tertentu yang telah tersedia pada parameter-nya.

NOTE :

  1. Pada kolom yang saya beri warna hijau adalah tipe data yang paling sering saya gunakan.

  2. Pada umumnya masing-masing DBMS (Database Management System) memiliki tipe data yang sama secara fungsional dan penggunaan, namun ada juga beberapa DBMS lain yang memiliki nama tipe data berbeda dengan fungsi yang sama, misalkan yang pernah saya temui di DBMS Oracle :

    MYSQLORACLE
    INT()NUMBER()
    VARCHAR()VARCHAR2()
  3. Selain nama terdapat satu hal lagi yang membedakan tipe data pada masing-masing pada masing-masing DBMS yaitu adalah jangkauan (range) data yang dapat disimpan pada suatu kolom.

Mengidentifikasi Tipe Data Kolom / Attribute Suatu Table pada Database

Mengidentifikasi tipe data merupakan suatu kegiatan yang pada umumnya dilakukan oleh dilakukan oleh seorang sistem analisys atau programmer (secara umum) pada tahap analisis system. Jadi pada tahap analisis perancangan database dalam menentukan tipe data suatu data yang akan disimpan pada ada suatu hal yang biasanya saya dilakukan untuk mempermudah dalam proses perbuatannya yaitu dengan melakukan validasi dengan rancangan interface yang sudah dibuat dan rancangan flow atau alur dari program yang telah anda buat.

Berikut contoh saya mengidentifikasi kolom atau attibute untuk Tabel (Entitas) User  pada database :

KolomKeteranganHasil Kolom dan Tipe Data

id_user

Jumlah user pada suatu perusahaan yang akan menggunakan aplikasi yang saya kembangkan kurang dari 5000 orang, maka karena, kolom id maka saya akan gunakan tipe data character yang jumlahnya fix / tetap).

id_user CHAR(5)

nama_user

Nama orang (nama user) yang akan disimpan pada database memiliki jumlah character yang berbeda-beda, dan nama seorang user jumlah characternya pasti kurang dari 255.

nama_user VARCHAR(255)

address_user

Bisasanya sangat jumlah characternya sangat panjang dan jumlah character pada masing-masing alamat berbeda.

address_user TEXT

birthday_user

Biasanya orang hanya ingat tanggal lahirnya saja tidak dengan jam, menit dan detiknya.

birthday_user DATE

zipcode_user (kode pos)

Nomor kode pos di Indonesia memiliki 5 digit, jumlah digit tersebut dapat kita buat fix melalui tipe data.

zipcode_user INT(5)

gender_user (jenis kelamin)

Untuk kolom jenis kelamin pada karana ada 2 pilihan "Laki-Laki" dan "Perempuan", maka untuk khasus seperti ini dapat menerapkan tipedata berupa boolean.

gender_user ENUM('male', 'female')

country_user (di negara mana si user itu tinggal?)

Kebetulan perusahaan client memiliki user berupa karyawan yang bekerja secara remote di berbagai macam negara. untuk kasus seperti ini, bisa anda buat kolom country_user dengan tipe data enum, namun tidak saya sarankan untuk membuat enumeration yang memiliki pilihan sejumlah lebih dari 200, mengapa? karena jumlah pilihan yang terlalu banyak, saya sarankan membuat tabel negara yang ber-relasi dengan table user one-to-one. Dengan membuat tebel negara anda dapat menyertakan atribut / kolom lain yang dipengaruhi oleh negara, yaitu code negara pada nomor telephone misalkan.

country_user INT(3)

photo_user (foto profil user)

Terdapat 2 cara yang bisa dilakukan untuk menyimpan suatu data dalam bentuk gambar.

1. Jika anda ingin menyimpan gambar dalam bentuk binary pada suatu kolom data base anda dapat meng-set kolom tersebut dengan menggunakan tipe data binary.

photo_user BLOB

2. jika gambar tersebut akan anda simpan pada suatu directory di server anda, anda dapat mengstorkan ke database url dari gambar yang sudah anda upload.

photo_user TEXT
email_user

namun sangat disayangkan sekali format tipedata email masih belum anda, karena biasanya disimpan dalam bentuk string, atau kadang sebelum disimpan di database email akan diencripsi terlebih dahulu.

email_user VARCHAR(255)

Bagaimana cara mengimplementasikan penggunaan tipedata dalam database?

Dari hasil rancangan kolom dan tipedata diatas dapat di implementasi kan dalam bentuk Source code SQL atau Query untuk membuat Tabel User Berikut :

Anda dapat menjalankan kode query di atas pada DMBS MYSQL untuk membuat tabel.

NOTE :

Sebelum anda mengimplementasikan rancangan database anda pada DBMS lebih baik anda pertimbangkan secara matang terlebih dahulu, karena apa bila terjadi kesalahan atau ada atribut yang lupa ditambahkan dan terpaksa terjadi perubahan database ketika proses developing software sangatlah membuang-buang waktu pengerjaan. Programmer terpaksa harus memeriksa dan merubah bila perlu tiap-tiap function model yang berhubungan dengan tabel yang baru saja diperbarui.

Sekian artikel yang saya tulis untuk membahas tentang datatype atau tipe data pada database.

Banyak kurangnya saya mohon maaf,...

Terima Kasih

~Semoga Bermanfaat~

Macam-macam Tipe Data (Data Type) dalam Database

4/ lima

0 Response to "Macam-macam Tipe Data (Data Type) pada Database"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel