ODI14c Marketplace中Python调用oracledb包提示ObjectNotFound求助
ODI14c Marketplace环境下Python3.8调用oracledb报
ObjectNotFound问题排查 问题概述
- 环境:ODI14c Marketplace环境,Python3.8
- 现象:编写Python脚本连接Oracle数据库时,触发
ObjectNotFound错误 - 已确认:oracledb包已安装在Python3.8对应路径下
常见排查与解决方向
确认Python环境一致性
运行脚本的Python解释器可能和安装oracledb的Python3.8不是同一个。在脚本开头添加以下代码验证路径:import sys print(sys.executable)将输出路径与安装oracledb时的Python路径对比,ODI环境常自带独立Python环境,容易出现路径混淆。
验证oracledb安装有效性
在目标Python3.8环境中执行pip show oracledb,确认包版本及安装路径匹配;同时在该环境的交互模式下执行import oracledb,直接验证导入是否成功,排除脚本自身的路径问题。适配ODI环境的特殊配置
ODI14c Marketplace环境可能存在Python环境隔离,需将oracledb安装到ODI指定的Python环境中,而非系统全局Python3.8。可查看ODI配置文件找到其使用的Python路径,再在该路径下执行pip install oracledb。此外需检查ODI对Python脚本的执行权限,确保能访问oracledb的安装目录。排查底层依赖缺失
ObjectNotFound也可能因oracledb依赖的Oracle Instant Client组件缺失导致。确认环境中已正确配置Oracle Instant Client,且设置了对应的环境变量(如Linux下的LD_LIBRARY_PATH)。
内容的提问来源于stack exchange,提问作者Raghu
相关产品推荐
相关产品推荐

