SQLite3中文编码 Python

发布时间:2019-07-23 09:40:11编辑:auto阅读(1873)

    读取十万多条文本写入SQLite类型数据库,由于文本中存在中文字符,插入到数据库没错,取出时一直是UnicodeDecodeError,导致折腾了一天。 


    最后的解决方法


    Python连接数据时进行如下设置:

    db=sqlite3.connection("...")

    db.text_factory=st


    另为了python代码中硬编码的中文字符串不出现问题,除了在源码开始添加

    # -*- coding:utf-8 -*-  

    设置python源码的编码为utf-8

    import sys

    reload(sys)

    sys.setdefaultencode('utf8')


    Python操作SQLite3参考:https://docs.python.org/2/library/sqlite3.html

    英文阅读有困难的参考:http://python.usyiyi.cn/python_278/library/sqlite3.html

关键字