Python oracle数据库操作时,中文查询报错
python中使用oracle数据库进行查询时,出现下面的错误:
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下可以参考:
环境变量.png
添加变量名:NLS_LANG
添加变量值:SIMPLIFIED CHINESE_CHINA.UTF8
Mac下可以直接在数据库操作的文件顶部添加,给oracle设置字符集。
import os
os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8'
大功告成!!
时间:2018-10-09 22:41 来源: 转发量:次
声明:本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,不为其版权负责。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。
相关文章:
- [数据挖掘]底层I/O性能大PK:Python/Java被碾压,Rust有望取代
- [数据挖掘]大数据分析的技术有哪些?
- [数据挖掘]大数据分析会遇到哪些难题?
- [数据挖掘]RedMonk语言排行:Python力压Java,Ruby持续下滑
- [数据挖掘]不得了!Python 又爆出重大 Bug~
- [数据挖掘]TIOBE 1 月榜单:Python年度语言四连冠,C 语言再次
- [数据挖掘]TIOBE12月榜单:Java重回第二,Python有望四连冠年度
- [数据挖掘]这个可能打败Python的编程语言,正在征服科学界
- [数据挖掘]2021年编程语言趋势预测:Python和JavaScript仍火热,
- [数据挖掘]Spark 3.0重磅发布!开发近两年,流、Python、SQL重
相关推荐:
网友评论: