windows下python3连接Oracle数据库

一开始按照网上教程连接Oracle,报错:cx_Oracle.DatabaseError:Error while trying to retrieve text for error ORA-01804

网上查此报错:ORA-01804: 时区信息无法初始化

我没有按照此报错去解决,而是删除Oracle客户端,重新解压测试

Python版本:Python 3.6.3

以下是我的解决过程:

下载与本机符合的版本(我的是64位,下载的也是64位客户端)

windows下python3连接Oracle数据库_第1张图片

红色标记的是我下载的压缩包,及解压后的文件

接下来在环境标量设置

windows下python3连接Oracle数据库_第2张图片

变量值为解压后文件的下面

然后把instantclient_11_2文件夹下的标红的三个dll文件复制到\Lib\site-packages下

windows下python3连接Oracle数据库_第3张图片

在instantclient_11_2文件夹下添加tnsnames.ora文件

windows下python3连接Oracle数据库_第4张图片

tnsnames.ora文件内容为

orcl = 
   (DESCRIPTION = 
     (ADDRESS_LIST = 
       (ADDRESS = (PROTOCOL = TCP)(HOST = ip )(PORT = port)) 
     ) 
     (CONNECT_DATA = 
       (SERVICE_NAME = server_name) 
     ) 

ip为连接数据库的地址,port为连接数据库的端口,server为连接数据库的库名

windows下python3连接Oracle数据库_第5张图片

orcl可自定义

经过以上配置就可以连接Orcale

测试代码:

import cx_Oracle

db = cx_Oracle.connect('office/[email protected]:1521/orcl')

如果没有cx_Oracle包记得下载

pip install cx_Oracle

如果不报错就表示可以连接!!

接下来就可以进行数据库操作了

下载链接去这里:https://blog.csdn.net/guimaxingmc/article/details/80360840

你可能感兴趣的:(windows下python3连接Oracle数据库)