Mengambil semula Kandungan Teks dari BLOB dalam Oracle SQL
Dalam Oracle SQL, BLOBs (Binary Large Objects) digunakan untuk menyimpan data binari seperti imej, audio atau data bukan teks yang lain. Walau bagaimanapun, jika anda perlu melihat kandungan teks yang disimpan dalam BLOB daripada konsol SQL, anda boleh menggunakan teknik berikut:
Pertama sekali, perlu diperhatikan bahawa BLOB direka untuk data binari dan untuk menyimpan teks, Lajur CLOB (Character Large Object) atau NCLOB (National Character Large Object) adalah lebih sesuai. Pertanyaan yang anda berikan akan berfungsi jika BLOB mengandungi data CLOB.
Untuk melihat perwakilan teks BLOB, anda boleh menggunakan fungsi utl_raw.cast_to_varchar2():
select utl_raw.cast_to_varchar2(dbms_lob.substr(BLOB_FIELD)) from TABLE_WITH_BLOB where ID = '<row id>';
Pertanyaan ini akan mendapatkan semula 32767 aksara pertama (paling banyak) teks dalam BLOB. Sebelum melakukan penukaran, pastikan set aksara bagi data BLOB, pangkalan data dan pembolehubah VARCHAR2 adalah serasi untuk mengelakkan kemungkinan kerosakan data.
Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak Kandungan Teks dari BLOB dalam Oracle SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!