前言:
现时看官们对“python怎么连接oracle数据库”可能比较珍视,同学们都需要知道一些“python怎么连接oracle数据库”的相关内容。那么小编同时在网络上搜集了一些对于“python怎么连接oracle数据库””的相关资讯,希望朋友们能喜欢,小伙伴们一起来了解一下吧!前言
操作系统:Window 10 64位
RPA:IS-RPA 2020.2.0
查看IS-RPA Python版本
由下图可知:
IS-RPA安装在E盘,Python解释器所在的目录在IS-RPA2020 / Python下
Python的版本是Python 3..6.4 32位
下载cx_Oracle第三方库
点击这里下载:下载链接
cpxx,表示适用于Python的版本为xx 带有win32后缀是32位带有amd64后缀是64位
举个栗子:cx_Oracle‑7.3.0‑cp36‑cp36m‑win32.whl 表示适用于Python3.6版本,32位
安装cx_Oracle第三方库
# 安装 1.打开 PowerShell2. 进入 E:\Program Files\IS-RPA2020\Python\Scripts> (这里 IS-RPA 安装在 E 盘)3. 输入以下命令(这里 Oracle 第三方库的位置在 l D:\download\) PS E:\Program Files\IS-RPA2020\Python\Scripts> ..\python.exe .\pip.exe install D:\download\cx_Oracle-7.3.0-cp36-cp36m-win32.whl
注意:选择对应的Python版本下载cx_oracle第三库
测试连接Python第三方库
conn = cx_Oracle.connect('szxy/123@localhost:1527/orcl') cursor = conn.cursor() result = cursor.execute('''select * from DEPT''') data = cursor.fetchall() print(data)运行发生异常
cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 32-bit Oracle Client librar: "E:\Oracle\product\11.2.0\dbhome_1\bin\oci.dll is not the correct architecture". See for help
发生异常原因是:小编安装是Oracle版本是Oracle 11g 64位的,而Python的版本是32位的。
解决方案
适用于Microsoft Windows 32位的Instant Client下载,下载速度很慢,耐心等待。
将Instantclient-basic-nt-11.2.0.4.0.zip解压,然后将Instantclient-basic-nt-11.2.0.4.0目录下的oci.dll,oraocci11.dll,oraociei11.dll复制到E:\ Program Files \ IS-RPA2020 \ Python \ Lib \ site-packages目录下
重新运行结果集中文乱码
# 原来的 conn = cx_Oracle.connect(g_conn_str,) # 修改后的 conn = cx_Oracle.connect(g_conn_str, encoding = "UTF-8", nencoding = "UTF-8")
再次运行
标签: #python怎么连接oracle数据库