Menggunakan SQLite3 dengan Python, saya mencoba menyimpan versi terkompresi dari potongan kode UTF-8 HTML.
Kode terlihat seperti ini:
...
c = connection.cursor()
c.execute('create table blah (cid integer primary key,html blob)')
...
c.execute('insert or ignore into blah values (?, ?)',(cid, zlib.compress(html)))
Di mana titik mendapatkan kesalahan:
sqlite3.ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory that can interpret 8-bit bytestrings (like text_factory = str). It is highly recommended that you instead just switch your application to Unicode strings.
Jika saya menggunakan 'teks' daripada 'gumpalan' dan tidak mengompres potongan HTML, itu berfungsi dengan baik (meskipun db terlalu besar). Ketika saya menggunakan 'blob' dan kompres melalui pustaka Python zlib, saya mendapatkan pesan kesalahan di atas. Saya melihat sekeliling tetapi tidak dapat menemukan jawaban sederhana untuk yang satu ini.