drno-reg
@drno-reg
см не кратко

Если другие варианты покдлючиться к Oracle кроме как cx_Oracle?

Здравствуйте.

на текущий момент использую для подключения к oracle библиотеку
cx_Oracle

#!/usr/bin/python
import cx_Oracle

ip = 'hostname'
port = 1522
SID = 'oraclesid'

dsn_tns = cx_Oracle.makedsn(ip, port, SID)
print (dsn_tns)
conn = cx_Oracle.connect('user', 'password', dsn_tns)
c = conn.cursor()
c.execute(sql_script)
for row in c:
    print (row[0], row[1])
conn.close()


но настало время перенести скрипт питона с девелоперской машины, просто на сервер windows с проинсталлированным интерпретатором python 3.5.

Итого работать он не захотел

Traceback (most recent call last):
  File "oracle.py", line 2, in <module>
    import cx_Oracle
ImportError: DLL load failed: %1 is not a valid Win32 application.


поначалу, я думал, что все дело в корректности установки python модуля cx_Oracle.
Но как оказалось, если я понял все верно, он не будет работать, если на машине нет OracleClient.

Такой "прицеп" в виде дополнительной инсталляции OracleClient мягко говоря не совсем удобен...

Если ли другие способы/библиотеки подключения к Oracle отличные от cx_Oracle и какие?
  • Вопрос задан
  • 1108 просмотров
Решения вопроса 1
@Draconian
Oracle Developer
Так-то ничего плохого в установке клиента на сервер нет. Один раз поставили и забыли.
В принципе, с Oracle можно работать через ODBC и JDBC (как в SQL Developer'е, например), на питоне это модуль JayDeBiApi. Попробуйте через него, лично я не пробовал.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Lorien_Elf
@Lorien_Elf
Keep calm and drop database
Устанавливать полного клиента не обязательно, можно ограничиться InstantClient.
www.oracle.com/technetwork/database/features/insta...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы