Форум сайта python.su
при попытке реализации кода
import sqlalchemy as sql e=sql.create_engine('oracle://user:password@host:port/sid') e.connect()
Отредактировано ant_sol (Фев. 21, 2019 14:41:01)
Офлайн
ant_sol
Очевидно, что для работы с СУБД нужен провайдер соответствующего клиента. Чтобы работать с Ораклом, для питона есть пакет cx_Oracle. Алхимия, знает, что для оракла надо использовать cx_Oracle, она пытается это сделать, но у вас такого пакета на машине нет, поэтому и ошибка. Вопрос, почему его нет в зависимостях алхимии. Во-первых, потому что алхимия не знает заранее, с какой СУБД вы будете работать, ей пришлось бы тащить на вашу машину десятки свяких довольно тяжелых пакетов, которые вы никогда не будете использовать. Во-вторых, cx_Oracle вообще просто так не устанавливается, это не сугубо питоний код, это обвязка для бинарников из комплекта oracle instant client. То есть для того, чтобы можно было установить (при этом скомпилировав кучу сишников) cx_Oracle, на машине уже должен быть установлен instant client.
Офлайн
FishHook
ant_solОчевидно, что для работы с СУБД нужен провайдер соответствующего клиента. Чтобы работать с Ораклом, для питона есть пакет cx_Oracle. Алхимия, знает, что для оракла надо использовать cx_Oracle, она пытается это сделать, но у вас такого пакета на машине нет, поэтому и ошибка. Вопрос, почему его нет в зависимостях алхимии. Во-первых, потому что алхимия не знает заранее, с какой СУБД вы будете работать, ей пришлось бы тащить на вашу машину десятки свяких довольно тяжелых пакетов, которые вы никогда не будете использовать. Во-вторых, cx_Oracle вообще просто так не устанавливается, это не сугубо питоний код, это обвязка для бинарников из комплекта oracle instant client. То есть для того, чтобы можно было установить (при этом скомпилировав кучу сишников) cx_Oracle, на машине уже должен быть установлен instant client.
Офлайн
ant_solНе важно, какая разрядность Оракла - клиент работает с СУБД по сети. Разрядность важна для компиляции, то есть вам нужно выяснить разрядность instant client.
Оракл на машине есть, разрядность его 64bit
windows тоже на 64bit
Офлайн