Python3.7运行cx_Oracle.init_oracle_client提示无属性如何解决
错误原因
cx_Oracle.init_oracle_client() 是cx_Oracle 8.0及以上版本才新增的API。你Python 3.7环境中安装的cx_Oracle版本低于8.0,因此找不到该属性;Python 3.6环境的cx_Oracle版本符合版本要求,因此可以正常运行。
解决方案
- 方案一:升级Python 3.7环境的cx_Oracle版本
直接执行升级命令即可:
升级完成后重新运行原有代码即可正常调用pip install --upgrade cx-Oracleinit_oracle_client方法。
你可以执行以下命令确认当前环境的cx_Oracle版本,验证升级是否成功:pip show cx-Oracle - 方案二:适配低版本cx_Oracle(不升级的场景)
如果业务有兼容要求不能升级cx_Oracle版本,可以直接通过配置系统环境变量的方式加载Oracle客户端,无需调用init_oracle_client方法:- Windows系统:将Oracle Instant Client的目录路径添加到系统
PATH环境变量,重启运行代码的终端后再执行代码即可 - Linux系统:将Oracle Instant Client的目录路径添加到
LD_LIBRARY_PATH环境变量 - macOS系统:将Oracle Instant Client的目录路径添加到
DYLD_LIBRARY_PATH环境变量
- Windows系统:将Oracle Instant Client的目录路径添加到系统
内容的提问来源于stack exchange,提问作者Anil Krishna Parvathaneni
相关产品推荐
相关产品推荐

