cx_oracle链接'ascii' codec can't encode characters in position 136-139

问题:

python 使用 cx_Oracle连接数据库

oracle 'ascii' codec can't encode characters in position 136-139

解决

其实很简单
首先想到的python 的字符集问题,在:

在Python的Lib\site-packages文件夹下新建一个sitecustomize.py文件,内容为:#coding=utf8
import sysreload(sys)
sys.setdefaultencoding(‘utf8’)

这是python2处理方式
后打印查看字符集为 utf-8,没有问题。
发现是在cursor.execute执行时候报的错,考虑是客户端字符集的问题;。

用户环境变量增加 nls_lang:AMERICAN_AMERICA.ZHS16GBK
后解决问题。

其他

顺便记录cx_oracle环境配置:

1.下载cx_oracle

然后直接pip install xxxx 安装

2.下载instantclient-basic-windows.x64-11.2.0.4.0.zip

直接解压

3.配置环境变量

TNS_ADMIN +环境路径
NLS_LANG +z字符集
path +instantclient路径

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值