python用cx_Oracle连接数据库,出现错误cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library的解决办法

python连接oracle数据,用cx_oracle连接数据库,报了标题中的错误,百度后大概定位原因是因为python,cx_oracle和oracle客户端的位数不一致。

我电脑操作系统的位数是64位

python的版本信息如下:

oracle客户端为: instantclient_11_2是32位的客户端

oracle服务端版本信息为:

发现报错的原因:

instantclient版本为32位,需更换成64位。

解决步骤:

1. 重新下载 instantclient 64位, 下载链接:http://jvniu.jb51.net:81/201708/tools/instantclientx64_jb51.rar

2.下载完成后,解压得到 文件夹 instantclient_11_2

3.重新安装新下载的客户端 (即在环境变量中重新配置新的客户端路径)

4.把oracle客户端的安装文件中以.dll结尾的文件复制到python的安装目录中

5.重新启动pycharm,就发现不报错

原文地址:https://www.cnblogs.com/fgl-1/p/12380756.html

时间: 2024-11-10 14:13:11

python用cx_Oracle连接数据库,出现错误cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library的解决办法的相关文章

Linux下使用Python连接Oracle 报cx_Oracle.DatabaseError: DPI-1047: 64-bit Oracle Client library cannot be loaded解决方法

在Linux上使用python运行数据库脚本的时候报:cx_Oracle.DatabaseError: DPI-1047: 64-bit Oracle Client library cannot be loaded解决方法 这个导致这个问题的原因是本机的Python2.7是64位的,而数据库用了32位的instantclient-basic,所以要把instantclient-basic的版本更新为64位的 以下是按照官网文档操作的,自测没有问题. 下载instantclient-basic的R

IIS7错误:“Web服务器被配置为不列出此目录的内容”的解决办法

IIS7错误:“Web服务器被配置为不列出此目录的内容”的解决方法: 在"操作"下,点启用,此按钮将变成禁用,则可消除此错误 IIS7错误:"Web服务器被配置为不列出此目录的内容"的解决办法,布布扣,bubuko.com

遇到错误ERROR 1044 (42000): Access denied for user ''@'localhost'to database 'mysql',的解决办法

新装的mysql,访问mysql数据库是遇到问题:ERROR 1044 (42000): Access denied for user ''@'localhost'to database 'mysql', [[email protected] mysql-5.1.61]# mysql -u root -p Enter password: Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection

IDEA13中配置struts错误:ClassNotFoundException: org...dispatcher.ng.filter.StrutsPrepareAndExecuteFilter +找不到java程序包 解决办法

问题一:ClassNotFoundException: org...dispatcher.ng.filter.StrutsPrepareAndExecuteFilter解决办法 1.确保所有struts2所需要的包都导进去了(红色标记的),如图: 2.将外部lib下的包都复制到WEB-INFO下: 当再次启动tomcat的时候就可以了.IDEA会把src目录下的所有非*.java文件复制到WEB-INF/classes目录下,所以Tomcat说找不到所需要的类. 相同问题也可参见如下:(具体见原

类库(DLL)项目中引用WebService错误:找不到引用协定“Abcds.XXXXSoap”的默认终结点元素。解决办法

错误提示案例:在 ServiceModel 客户端配置部分中,找不到引用协定“PutMCCases.PutMCCasesSoap”的默认终结点元素.这可能是因为未找到应用程序的配置文件,或者是因为客户端元素中找不到与此协定匹配的终结点元素. 答疑如下: 类库项目中添加了WebService之后,会默认生成一个app.Config文件,里面是WebService的配置信息 假设我的文件内容如下: <?xml version="1.0" encoding="utf-8&qu

Sql Server 备份还原失败错误ERROR:3145(备份集中的数据库备份与现有的数据库不同)及解决办法

SQL Server备份文件bak,备份后还原出现错误3145,备份集中的数据库备份与现有的 'xxx' 数据库不同. 解决办法如下: 1,新建一个与现有数据库重名的数据库. 如果您不知道数据库名称,别着急,执行下面语句得到备份文件的逻辑文件名: use master; --用此语句得到备份文件的逻辑文件名 RESTORE FILELISTONLY FROM DISK = N'E:\database\LocalDB\school.bak'; --备份文件的物理路径 上面的SQL命令执行结果是查询

php 错误 Strict Standards: PHP Strict Standards: Declaration of .... should be compatible with that of 解决办法

错误原因:这是由于 php 5.3版本后.要求继承类必须在父类之后定义.否则就会出现Strict Standards: PHP Strict Standards: Declaration of .... should be compatible with that of .... 的错误提示.也就是说必须父类在前,继承类在后.错误参考页面.bugs点php点net/bug.php?id=46851  (不能发表带链接的网址) 上面清楚地解释了出现此类错误的具体原因.解决办法:在wordpress

Windows环境下Python v2.7.9,NotePad++编写程序中涉及中文,执行时CMD中显示乱码的解决办法

例如: 1.使用NotePad++,以默认的"以 UTF-8无 BOM 格式编码"编写: print "一加一等于二" 直接运行后CMD报错: 但是在IDLE中显示正常: 在文件第一行加入注释: # _*_coding:utf-8_*_ 运行后CMD显示乱码,IDLE依然正常: 在字符串前加u(Unicode编码): # _*_coding:utf-8_*_ print u"一加一等于二" 运行后正常,IDLE依然正常: 2. 使用NotePad

错误:could not get or update next value[SQL: ] Nhibernate 的一种解决办法。

错误:could not get or update next value[SQL: ] Nhibernate 解决:原因是数据库配置文件中的数据库方言配置错误.报错时我是用的SQLServer数据库服务器却在数据库配置文件中写的Oracle的数据库方言.改成SQLServer的数据库方言,一切OK. 注:出现could not get or update next value[SQL: ] Nhibernate错误的情况有很多种.也有可能是映射文件中的id生成器配置有问题.请参考:http:/