1.oracle数据库客户端instantclient下载安装和环境变量配置
.可以直接到oracle官网下载,版本要正确选择如果你的电脑是64为系统,python安装也是64位的版本那你就需要下载64位的版本否则会出错,我用的是11.2版本下载地址如下,也可以在官网选择其他版本的
下载地址:http://download.oracle.com/otn/nt/instantclient/11204/instantclient-basic-windows.x64-11.2.0.4.0.zip
.下载完成后直接放到你想放的位置解压,之后需要配置环境变量如下:
三个都要配置
- NLS_lANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK(注意中间有空格,这个如果不设,toad查询中文会是乱码)
- TNS_ADMIN= C:\Program Files (x86)\instantclient_11_2(后面的路径是你解压客户端的地址)
-
Path=…;C:\Program Files (x86)\instantclient_11_2
.接下来需要配置配置tnsnames.tns文件:
在C:\Program Files (x86)\instantclient_11_2下建立文件tnsnames.ora,将下面内容粘贴进该文件:
*** =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST= ***)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ***)
)
)
注意***的地方需要根据你自己的数据库信息替换掉
.再就是需要将C:\Program Files (x86)\instantclient_11_2下的oci.dll、oraocci11.dll、oraociei11.dll,这几个dll文件复制到
Python\Python36-32\Lib\site-packages文件夹中。
2.安装配置好了instantclient接下来需要安装python的 cx_Oracle,直接用命令 pip install cx_Oracle命令安装即可
安装完成之后导入这个库看是否报错,如下图所示为成功导入。
3.接下来就可以写python连接数据库的操作了
import cx_Oracle # 引用模块cx_Oracle
conn = cx_Oracle.connect('username/password@ip/servicename') #这里的顺序是用户名/密码@oracleserver的ip地址/数据库名字
c = conn.cursor() # 获取cursor
c.execute(sql) # 使用cursor进行各种操作
d = c.fetchone()[0] # 得到的数据结构为数组,取第一个值
print(d)
c.close() # 关闭cursor
conn.close()#关闭连接