Python将UTF8字符串插入SQLite

时间:2014-09-27 22:15:13

标签: python sqlite encoding utf-8

我知道有类似的问题,但答案是截然不同的,有点令人困惑。

我有这个字符串:

titulo = "Así Habló Zaratustra (Cómic)"

当我尝试将其插入SQLite数据库时,我收到错误:

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.

我尝试了一些没有成功的事情。请帮忙。

1 个答案:

答案 0 :(得分:7)

执行它告诉您的操作并改为使用unicode值:

titulo_unicode = titulo.decode('utf8')

sqlite3库在插入时会正确编码,在选择时再次解码。