当前位置:Gxlcms > 数据库问题 > python读取数据库中文乱码问题

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

时间:2021-07-01 10:21:17 帮助过:24人阅读

今天朋友遇到过怪问题,在同一个页面显示的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   

人气教程排行