当前位置: 首页 > news >正文

python 配置 oracle instant client

1.问题描述

想用python连接oracle数据库,百度得知需要cx_Oracle这个第三方库

import cx_Oracle# 设置Oracle数据源名称
dsn = cx_Oracle.makedsn('host', 'port', service_name='service_name')# 创建数据库连接
connection = cx_Oracle.connect(user='username', password='password', dsn=dsn)# 创建游标对象
cursor = connection.cursor()# 执行SQL查询
cursor.execute("SELECT * FROM your_table")# 获取查询结果
rows = cursor.fetchall()
for row in rows:print(row)# 关闭游标和连接
cursor.close()
connection.close()

结果connect的时候报错了:

cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library: "The specified module could not be found". See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help

2.原因

检索得知,需要安装oracle客户端:

3.解决办法

而我本地是安装了PL/SQL developer的,图中的instant client也是设置过的,PL/SQL developer可以正常使用。那么如何设置让python cx_Oracle找到我之前的instant client,在https://blog.csdn.net/u010971561/article/details/142510583中找到了答案

这篇文章中的做法是将instant client目录下的dll文件复制到python的Lib\site-packages目录下,经验证,确实可用。

4.其他方法

cx_oracle文档:

https://cx-oracle.readthedocs.io/en/latest/

经验证,cx_Oracle.init_oracle_client 确实可用

经验证,修改环境变量 Path 确实可用


http://www.mrgr.cn/news/80557.html

相关文章:

  • “从零到一:揭秘操作系统的奇妙世界”【操作系统的发展】
  • 【合作原创】使用Termux搭建可以使用的生产力环境(七)
  • SpringBoot - 动态端口切换黑魔法
  • ORACLE RAC ADG备库报错ORA-04021: timeout occurred while waiting to lock object
  • LeetCode-Golang之【5. 最长回文子串】
  • 解读Modbus TCP指令
  • 【已解决】启动此实时调试器时未使用必需的安全权限。要调试该进程,必须以管理员身份运行此实时调试器。是否调试该进程?
  • 【计算机网络】期末考试预习复习|上
  • 本地部署大模型QPS推理测试
  • gRPC拦截器
  • 【50】Android自定义身份证拍照相机
  • 【前后端】HTTP网络传输协议
  • Qt设置部件的阴影效果
  • 12.17双向链表,循环链表
  • (2024年最新)Linux(Ubuntu) 中配置静态IP(包含解决每次重启后配置文件失效问题)
  • PSIM不放接地原件
  • 那些不熟悉的C语言关键字-const
  • 3D视觉[一]3D计算机视觉
  • QT5.9.9+ARM开发环境搭建【详细步骤】
  • 3.2.1.2 汇编版 原子操作 CAS
  • Canoe CAPL编程
  • 2012年西部数学奥林匹克试题(几何)
  • ASR-LLM-TTS 实时语音对话助手:语音识别、大模型对话、声音生成
  • 算法题(7):n进制乘法表
  • kubeadm_k8s_v1.31高可用部署教程
  • DATA-HUB 安装与启动: