sql >> Database >  >> RDS >> Oracle

Python-module cx_Oracle-module kan niet worden gevonden

# - This import requires appropriate oraocciXX.dll to be available in PATH (on windows)
#   (Probably LD_LIBRARY_PATH or LD_LIBRARY_PATH64 on POSIX)
#     where XX is the oracle DB version, e.g. oraocci11.dll for Oracle 11g.
# - This dll is part of the Oracle Instant client pkg available here:
#     http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
# - Also ensure that python, cx_Oracle and Oracle Client are of same arch (32 or 64-bit)
#
import cx_Oracle

U kunt arch (32 of 64-bit) vinden voor:

  • python door de python gewoon in de interactieve modus op de opdrachtregel uit te voeren.
  • cx_Oracle:kijk naar de naam van het gedownloade bestand.
  • Oracle-client:
    • voer de sqlplus uit die deel uitmaakt van uw klantenpakket
    • start Taakbeheer en kijk of er bij sqlplus.exe "*32" staat (=32 bit) of niet (=64 bit)
    • als je geen sqlplus hebt, gebruik dan dumpbin /headers oraocciXX.dll
  • Als je POSIX gebruikt, wist je het waarschijnlijk al. Gebruik file oraocciXX.so

Eindelijk, als je het nog steeds niet begrijpt, zijn hier echt instructies voor dummies:

  • Zorg ervoor dat je 32-bits versies van python, cx_Oracle en Oracle Instant Client hebt geïnstalleerd. Deze kunnen ook 64-bits zijn, maar moeten voor alle 3 hetzelfde zijn. Kan niet mixen en matchen. Links:
    • Oracle Instant Client Laten we zeggen dat het is geïnstalleerd in C:\ProgFiles\OraClient\11_2
    • cx_Oracle
    • Python
  • Windows:
    • set PATH=%PATH%;C:\ProgFiles\OraClient\11_2
  • POSIX (Linux/Unix/Solaris...) <-- Niet getest..
    • export LD_LIBRARY_PATH=/path/to/your/32bit/oraocciXX.so
    • (64 bit) export LD_LIBRARY_PATH64=/path/to/your/64bit/oraocciXX.so
  • voer path-to-python/python.exe -c "import cx_Oracle" uit om te testen of je setup werkt of niet.
    • als het wordt afgedrukt
    • niets:dan is het gelukt.
    • ImportError: DLL load failed: The specified module could not be found :dan wordt oraocciXX niet gevonden. Stel de env-vars correct in.
    • ImportError: DLL load failed: %1 is not a valid Win32 application :U heeft een 32/64 bit-mismatch.


  1. datetime naar totalminute in sql

  2. Hoe gebruik ik de huidige datum in een HQL-query met een Oracle-database?

  3. Authenticatie-plug-in 'caching_sha2_password' kan niet worden geladen

  4. Hoe retentiepercentage in SQL berekenen?