乱码问题
安装cx_Oracle完成,但是在用python连接Oracle时,涉及到中的地方,显示?问号,最后发现时Oracle客户端的字符编码与Oracle数据库编码设置不一致。
解决方法
-
查询Oracle数据库的编码
select userenv('language') from dual;
-
编写的Python脚本中需要加入如下几句:
import os
os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.AL32UTF8'
- 这样可以保证select出来的中文显示没有问题;要能够正常的insert和update中文,还需要指定python源文件的字符集密码和oracle一致。
#-- coding: utf-8 --