Skip to main content

Mengenal Tipe Data BLOB di MS Access

Bagi para pengguna Access dan programmer Access yang masih pemula, tipe data BLOB terdengar asing. Adalah hal yang masuk akal bahwa BLOB tidak terlihat sebagai tipe data di MS Access, terutama saat kita membuat sebuah tabel dan mengisi tipe data yang diinginkan.


Saat membuat sebuah tabel di MS Access, pada bagian Data Type, kita memang tidak menemukan tipe data BLOB. Oleh karena itu, wajarlah bila pengguna MS Access bertanya-tanya apa itu BLOB?
Gambar 1 Tipe Data OLE Object untuk menyimpan BLOB

BLOB adalah singkatan dari Binary Large Object Bitmap. Di Access, BLOB merupakan bagian dari tipe data OLE Object (lihat Gambar 1). Tipe data BLOB bisa berisi file MS Word, MS Excel, gambar (image) dengan ekstensi seperti .gif, .jpg, .png, dan sebagainya. Selain itu, kita juga bisa menyimpan file yang sifatnya executeable (ekstensi .exe), .pdf, .sys dan masih banyak lagi. Intinya, BLOB digunakan untuk menyimpan file ke dalam sebuah database. Dalam praktek secara umum, BLOB digunakan untuk menyimpan data gambar, biasanya digunakan untuk menyimpan gambar logo perusahaan dan foto diri pegawai.

Keunggulan BLOB


Menyimpan file dalam sebuah database seperti BLOB mempunyai beberapa keunggulan, yaitu:
  1. Memudahkan konsolidasi data karena database dan file berada dalam satu tempat
  2. Merupakan solusi yang terintegrasi. Misalnya. bila ingin melakukan back-up data, kita hanya perlu mengcopy sebuah database yang didalamnya sudah tersimpan file.
  3. File yang tersimpan di dalam database lebih aman dari tangan jahil. Contoh kasusnya seperti ini: Data foto pegawai akan lebih aman disimpan di database (dalam bentuk BLOB) dari pada disimpan dalam bentuk file di sebuah folder. Bila di simpan di sebuah folder, pengguna lain mungkin bisa melihat foto pegawai, bahkan bisa menggantinya dengan foto/gambar lain. Hal ini akan berbeda bila foto tersimpan dalam database, karena foto dalam database tidak mudah diganti.

Mengelola Data Bertipe BLOB


Pada prinsipnya, mengelola data yang mempunyai tipe BLOB tidak berbeda dengan tipe data lain, seperti Text, Number, dan sebagainya. Namun demikian, dalam mengelola data tipe BLOB ini, kita harus meminimalkan risiko database dari kerusakan atau ukuran database yang membesar. Ada dua cara yang digunakan untuk mengelola data BLOB:
  1. Membuat tabel tersendiri: Tabel yang berisi BLOB tempatnya menyatu dengan tabel-tabel lainnya dalam satu kesatuan database. Saat dibutuhkan, kita bisa membuat semacam tautan yang mengarahkan ke tabel BLOB. Cara ini cocok diterapkan bila ukuran data BLOB relatif kecil. Misalkan menyimpan 200 gambar/foto pegawai dengan maksimal ukuran file gambar adalah 40 KB.
  2. Membuat database tersendiri yang berisi tabel khusus untuk menyimpan data BLOB. Database yang berisi tabel BLOB terpisah dengan database utama yang mungkin berisi berbagai macam tabel selain BLOB. Saat dibutuhkan, kita bisa membuka database BLOB dan membuat semacam tautan yang mengarahkan ke tabel BLOB. Cara ini cocok diterapkan bila ukuran data BLOB lumayan besar. Misalkan menyimpan 400 file/gambar/foto pegawai dengan maksimal ukuran file gambar adalah 200 KB.
Untuk diketahui, sebuah file Access yang berekstensi .accdb mempunyai ukuran maksimum sebesar 2 GB.Dengan demikian, kita harus menjaga supaya ukuran file yang berisi data BLOB tidak lebih dari 2 GB. Paling tidak, kita harus mempunyai cadangan sebesar 20% dari total size untuk berjaga-jaga. Selain itu, melakukan pembatasan ukuran maksimum sebuah file yang bisa disimpan di database juga cukup membantu. Misalnya, bila ukuran lebih dari 200 KB, maka file yang akan disimpan sebagai data BLOB tidak bisa dieksekusi.

BLOB menyimpan data file secara universal, artinya semua jenis file disimpan dalam bentuk biner, tanpa melihat jenis file apakah itu, entah docx, xlsx, jpg, gif, pdf, mp3, dan sebagainya. Mengingat BLOB bisa digunakan untuk menyimpan berbagai macam file secara universal, maka kita harus juga menyimpan properti atau metadata yang berkaitan dengan data BLOB yang disimpan. Bila data BLOB disimpan dengan menggunakan tipe data OLE Object, maka untuk metadata atau properti, tipe data yang digunakan bisa Text, Number, Memo, dan lain-lain yang umum kita gunakan. Sebagai contoh, file docx yang tersimpan di database harus mempunyai metadata, paling tidak: nama file, tipe file, ukuran, dan deskripsi ringkas file docx. Demikian pula untuk file xlsx, gif, pdf, dan sebagainya. Tujuan menyimpan metadata ini adalah untuk memudahkan pembacaan, yaitu dengan mengkonversi data BLOB ke file orisinil.

Kelemahan BLOB


Walaupun mempunyai kelebihan seperti dijelaskan di atas, banyak sekali programmer yang tidak menyimpan data BLOB. Umumnya, mereka lebih suka menyimpan file dalam sebuah folder tepisah dan membuat semacam link berupa teks ke file yang ada di folder ini. Alasan utama programmer Access tidak menyimpan data BLOB adalah ukuran file di Access yang bisa membengkak beberapa kali lipat dari ukuran yang seharusnya. Dengan ukuran file yang membesar, maka risiko database akan mengalami kerusakan menjadi semakin besar, apalagi bila database itu tersimpan dalam sebuah server. Trafik jaringan akan menjadi padat, dan lalu lintas data bisa terganggu. Sebagai akibatnya, database mungkin akan mengalami "corrupt". Selain itu, tidak semua file yang tersimpan dalam database, bila dibuka dengan aplikasi yang sesuai, akan berfungsi sebagaimana seharusnya. File MS Word misalnya, saat sebuah file Word yang berasal dari database Access dibuka, aplikasi Word mungkin akan menampilkan pesan kesalahan seperti gambar di bawah ini:


Gambar 2 dan 3. Pesan kesalahan yang muncul karena Word gagal membaca file dari BLOB
Umumnya untuk menghindari kesalahan seperti gambar di atas, kita mengcompress file terlebih dahulu dengan menggunakan Winzip atau Winrar. Selanjutnya, file yang berada di dalam Winzip atau Winrar kita simpan di database dalam bentuk BLOB.

Terlepas dari kelemahan BLOB, dalam kasus menyimpan foto pegawai di atas, BLOB tetaplah paling aman. Persoalannya, kita mungkin belum tahu bagaimana cara mengelola data yang mempunyai tiipe BLOB itu. Pada posting berikutnya, kita akan membuat database, tabel, beserta interface yang digunakan untuk menyimpan data BLOB dan juga mengoptimalkannya dalam membantu pekerjaan sehari-hari. Oleh karena itu, ikuti terus posting terbaru di Access Terapan.

Comments

  1. Min boleh nanya? diluar konteks sih ,,, saya bingung membuat paragraf dari 2/3 colom lain ... misal membuat nama barang , dari kolom jenis, dan type... exp nama barang = lampu | Led, nah bagaimana manggabungkan 2 kalimat tsb ke dalam satu paragraf? thnks Master

    ReplyDelete
    Replies
    1. Selama ada pola yang konsisten, penggabungan dapat 2/3 dapat dilakukan dengan menggunakan operator & di antara dua kolom itu, misalnya: [nilai kolom 1] & " " & [nilai kolom 2], [nilai kolom 1] & ", " & [nilai kolom 2], atau [nilai kolom 1] & " dan " & [nilai kolom 2].... demikian dan seterusnya.

      Kalau misalnya dalam satu kolom ada karakter tertentu yang menjadi pemisah, misalnya karakter "|" ingin diganti dengan spasi kosong ya gunakan fungsi Replace. Contohnya:

      Replace("lampu | Led", " | ", " ") untuk menghilangkan tanda "|". Demikian dan seterusnya.

      Delete

Post a Comment

Posting Terpopuler

Normalisasi, Denormalisasi, dan Anomali Database

Membuat Relasi Database

Menampilkan Data MySQL dalam Form di Access