python用cx_Oracle连接oracle

 

确认版本:

oracle版本:64位

python版本:64位

下载cx_Oracle的whl包:64位

安装whl包:pip install wheel

cd到下载路径安装cx_Oracle的whl包:pip install cx_Oracle-7.2.3-cp36-cp36m-win_amd64.whl

安装后到python目录下有文档,里面有使用方法:https://oracle.github.io/python-cx_Oracle/index.html

 

由于数据库版本是11,所以这里下载11对应的instant文件win64位:https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html

下载解压,这里为了方便管理,将下载的instant文件解压到python文件夹下

在环境变量path中加入此路径

将此instantclient_11_2下此3个ddl文件拷贝到python的site-packages下

运行测试脚本,没有报错,并且打印出了数据信息,说明连接成功

import cx_Oracle

conn = cx_Oracle.connect('用户名/密码@ip:端口/服务名')
curs = conn.cursor()
sql = 'select * from product_component_version'
curs.execute(sql)

for result in curs:
print(result)

curs.close()
conn.close()

 

安装过程中的一些坑: 

若报错:cx_Oracle.DatabaseError: DPI-1050: Oracle Client library is at version 0.0 but version 11.2 or higher is needed

需更换instantclient为数据库对应的版本,网上有人说是换cx_Oracle版本,其实不是的

 

最后成功连接数据库的环境版本:

python:3.6 - 64bit
oracle数据库:11.2.0.2.0 - 64bit
cx_Oracle:7.2.3 - 64bit
instantclient:11.2.0.4.0 - 64bit

 

posted @   向前走。  阅读(12289)  评论(1编辑  收藏  举报
编辑推荐:
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
阅读排行:
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
点击右上角即可分享
微信分享提示