码迷,mamicode.com
首页 > 数据库 > 详细

python读取数据库中文乱码问题

时间:2017-09-27 13:11:00      阅读:325      评论:0      收藏:0      [点我收藏+]

标签:gbk   存储   长度   enc   ati   arch   一个   表示   python   

今天朋友遇到过怪问题,在同一个页面显示的2条中文记录一个正常,一个乱码,2条记录分别从不同的表里取出。录入的时候采用直接录入。仔细观察2者区别,发现能正常显示的字段在表中类型为nvarchar,不能的是varchar,试着将其改成nvarchar,问题解决。 因为对sqlserver不熟悉。通过查询手册得知: nvarchar表示以Unicode格式存储可变长度的 数据,所以能显示中文,而varchar是用非unicode存储数据,所以乱码。
将Varchar类型设置为nvarchar类型,发现问题可以解决。(修改成latin1编码就可以了)

GBK编码,读取数据库中文乱码,把取出的字符串重新编码如下

s.encode(‘latin1‘).decode(‘gb2312‘)

python读取数据库中文乱码问题

标签:gbk   存储   长度   enc   ati   arch   一个   表示   python   

原文地址:http://www.cnblogs.com/mojiemeizi/p/7600927.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!