我应该安装哪个版本的Oracle Client?

时间:2019-02-07 11:35:03

标签: python oracle

我需要在Oracle 9i数据库中使用Python运行一些SQL查询,为此我应该安装哪个版本的Oracle。我在Windows 10计算机上使用cx_Oracle和Python 3.7。

我收到此错误消息:“ cx_Oracle.DatabaseError:DPI-1047:无法加载64位Oracle客户端库:”

2 个答案:

答案 0 :(得分:2)

您需要oracle客户端11或10。Oracle客户端12无法连接到oracle 9i。 oracle客户端库必须为32位或64位,并与您的Python体系结构匹配。

    C:\oracle\instantclient_12_2>.\sqlplus.exe scott/tiger@test

    SQL*Plus: Release 12.2.0.1.0 Production on Thu Feb 7 14:39:09 2019

    Copyright (c) 1982, 2017, Oracle.  All rights reserved.

    ERROR:
    ORA-03134: Connections to this server version are no longer supported.


    Enter user-name:

C:\oracle\instantclient_11_2>.\sqlplus.exe scott/tiger@test

SQL*Plus: Release 11.2.0.4.0 Production on Thu Feb 7 14:39:58 2019

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle9i Enterprise Edition Release 9.2.0.8.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production

SQL>

答案 1 :(得分:0)

cx_Oracle的最新版本需要11.2或更高版本的Oracle客户端库。幸运的是,Oracle客户端11.2将连接到Oracle DB 9.2和更高版本的DB。从错误消息中,您需要一个64位版本,可以使用免费的Oracle Instant Client获得。

查看cx_Oracle安装手册的Oracle Client and Oracle Database Interoperability部分。

如果您不熟悉cx_Oracle,请查看tutorialsamples。 cx_Oracle运行单个SQL语句;它不运行SQL * Plus脚本(带有多个语句)