Pythonoracle数据库操作时,中文查询报错

python中使用oracle数据库进行查询时,出现下面的错误:

龙湖网站建设公司创新互联建站,龙湖网站设计制作,有大型网站制作公司丰富经验。已为龙湖上1000家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的龙湖做网站的公司定做!

 
 
 
 
  1. UnicodeEncodeError: 'ascii' codec can't encode characters in position 54-57: ordinal not in range(128) 

错误定位是在cur.execute(sql)进行查询的这句。

因为提示编码问题,一直在折腾编码,各种断点加下来,其实语句本身并没有发生乱码,而且因为使用的python3.x,默认已经是utf-8编码,不该出现这样的问题啊。。

各种查,把网上各种改编码的方法试了一下遍。。

***发现搜索方式不对..***的***终于找到了,是oracle的一个环境变量没有配。

windows下可以参考:

添加变量名:NLS_LANG

添加变量值:SIMPLIFIED CHINESE_CHINA.UTF8

Mac下可以直接在数据库操作的文件顶部添加,给oracle设置字符集。

 
 
 
 
  1. import os 
  2.  
  3. os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8' 

大功告成!!

本文题目:Pythonoracle数据库操作时,中文查询报错
网站链接:http://www.csdahua.cn/qtweb/news19/480969.html

成都网站优化推广公司_创新互联,为您提供外贸建站定制开发网站设计微信公众号全网营销推广云服务器

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网