读取十万多条文本写入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