Di Oracle, tipe data RAW cocok untuk menyimpan nilai biner.
Masalah dengan menggunakan tipe data karakter untuk menyimpan data biner adalah bahwa nilainya tunduk pada terjemahan kumpulan karakter .
Jika set karakter klien tidak cocok dengan set karakter basis data, maka nilai akan diubah. (Artinya, nilai biner dalam satu pengkodean mewakili karakter tertentu, tetapi karakter tersebut dapat diwakili oleh nilai biner yang berbeda di kumpulan karakter lain.
Dengan tipe data karakter, Oracle mempertahankan nilai "karakter", bukan nilai biner yang dikodekan.
Jika Anda ingin menggunakan tipe data karakter (misalnya CHAR atau VARCHAR2) untuk menyimpan nilai biner, maka Anda benar-benar perlu menyandikan nilai biner sebagai teks biasa, dan menyimpan serta mengambil nilai yang disandikan. Dua pengkodean biner-ke-teks yang populer adalah heksadesimal dan base64 (uuencode).
Oracle menyediakan fungsi bawaan RAWTOHEX dan HEXTORAW untuk encoding dan decoding biner (tipe data RAW) sebagai string heksadesimal (tipe data VARCHAR2).