报错一:
前提:未安装Oracle
报错:No module named 'cx_Oracle'
ModuleNotFoundError: No module named 'cx_Oracle'
解决方式:
oci.dll拷贝到C:\ProgramData\Anaconda3\Lib\site-packages里面程序执行正常
C:\ProgramData\Anaconda3\Lib\site-packages:Anaconda3\Lib\site-package的位置
报错二:
前提:已解决报错一
报错:DPI-1047
DPI-1047: Cannot locate a 64-bit Oracle Client library: "D:\instantclient_11_2\oci.dll is not the correct architecture". See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help
解决方式:
1、安装Oracle Instant Client(安装与服务器Oracle版本相近的版本)
2、解压之后,配置系统环境
举例:
解压后路径:D:\instantclient_11_2
将此路径添加到系统的path中
3、在解压路径中添加tnsnames.ora文件,文件配置如下:
YYHDAPP =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 服务器IP)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = 服务器上服务名称)
)
)
4、备注:
①Anaconda 是64位
②Oracle Instant Client 是64位
特别说明:报错一报错二不分前后,均可使用上述方式解决!