如何在设计器配置 cx_Oracle 连接 Oracle 数据库
最近在东航项目中遇到需要从 Oracle 数据库中取数据,这就遇到了一个问题,我们的 rpa 设计器要如何通过代码连接 Oracle 数据库呢。步骤如下:
1、调用第三方库:先在设计器安装 cx_Oracle 第三方库;(如何调用第三方库,论坛有教程,在此就不细说了)
2、下载包:登陆 https://www.oracle.com/technetwork/cn/topics/winsoft-095945-zhs.html ,
下载文件名为 instantclient-basic-nt-12.2.0.1.0.zip的软件包,
因设计器的情况,只能安装32位的 Instant client(切记,切记,切记,重要的事说三遍) 。
(该包为调用cx_Oracle库提供接口,通过cx_Oracle库与该包的结合,可直接通过代码对数据库进行操作)
3、配置:将下载的instantclient-basic-nt-12.2.0.1.0.zip包解压,我这里解压的instantclient_12_2文件夹放
到C:\Python36 文件夹中;
在“环境变量”的“系统变量”中增加:
1.ORACLE_HOME = C:\Python36\instantclient_12_2
2.TNS_ADMIN = C:\Python36\instantclient_12_2
3.NLS_LANG = SIMPLFILED CHINESE_CHINA.ZHS16GBK (此步设置主要是考虑乱码,须同服务器设置一样)
4.PATH = C:\Python36\instantclient_12_2
后面便可通过代码访问,规则如下
import cx_Oracle #引用模块cx_Oracle
conn=cx_Oracle.connect('load/123456@localhost/ora11g') #连接数据库
c=conn.cursor() #获取cursor
x=c.execute('select sysdate from dual') #使用cursor进行各种操作
x.fetchone() # fetchone 指查询一条,fetchall 指的是查询满足条件的所有
c.close() #关闭cursor
conn.close() #关闭连接
感谢。
如果数据库用的不是默认端口 1521,需要加上端口号。
conn=cx_Oracle.connect(‘load/123456@localhost:port/ora11g’)
学习了。