15分钟解决此问题,DPI-1047: Cannot locate a 64-bit Oracle Client library: “The specified module could not be
花了5小时研究,15分钟可解决此问题DPI-1047: Cannot locate a 64-bit Oracle Client library: "The specified module could not be
一、出错截图
Exception has occurred: DatabaseError
DPI-1047: Cannot locate a 64-bit Oracle Client library: "The specified module could not be found". See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help
二、解决方法
主要原因是cx_Oracle在导入后,需要找到oracle的本地客户端。下载一个临时的
1、先查询oracle数据库的版本
SELECT * FROM v$version;
2、根据版本oracle官网下载相应的临时客户端,大概50多M。
oracle官网11g客户端下载网址:Instant Client for Microsoft Windows (x64) 64-bit (oracle.com)
3、解压后配置环境变量,这个不多说了。变量名 ORACLE_HOME ,别搞错。
4、配置连接,新建一个文件,文件名tnsnames.ora,内容如下,放在oracle\instantclient_11_2客户端下。注意样式。
oral = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 这是ip)(PORT = 端口)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = 数据库名) ) )
5、把oracle客户端中oracle\instantclient_11_2下的三个dell文件,复制到python编译器script目录下。我的是D:\soft\Anaconda3\envs\test1\Scripts,按自己的目录放。
6、重启下vscode,再运行。换了个错误,终于搞完了。
三、经验总结
太麻烦了,好在oracle临时客户端不大,不然搞死了。有问题留言,我帮你看。搞了大半天这个错误。网上东一下西一下的,难搞。
更多推荐
所有评论(0)