Вопрос
На работе у нас Oracle 7.Я хотел бы использовать Python для доступа к БД.Кто-нибудь так делал или знает, как это сделать?У меня Windows XP, Python 2.6 и версия cx_oracle для Python 2.6.
Однако когда я пытаюсь импортировать cx_oracle, я получаю следующую ошибку:
ImportError: DLL load failed the module could not be found
Любая помощь приветствуется!
Мэтт
Решение
cx_Oracle в настоящее время предоставляется только для связи с клиентами 9i, 10g и 11i.Установите один из этих клиентов и настройте его для подключения к базе данных Oracle 7, используя правильный ORACLE_SID.
Другие советы
Убедитесь, что у вас есть местоположение файлов oracle .dll (o), установленных в переменной среды PATH.Местоположения, содержащего oci.dll, должно быть достаточно.
Я столкнулся с такой же проблемой на работе.В конце концов я отказался от попыток использовать cx_Oracle и перешел к Адодбапи.Это работало с Oracle 8.
Если у вас настроен ODBC, вы можете его использовать.Он доступен с ActivePython или в виде расширений Win32.Вы получите связь с:
connection = odbc.odbc('db_alias/user/passwd')
При желании вы можете использовать Jython и тонкий клиент JDBC.Установка клиента не требуется.С Jython у вас есть доступ к базе данных через URL-адрес базы данных:
db = DriverManager.getConnection(db_url, usr, passwd)
где db_url выглядит так:
jdbc:oracle:thin:user/passwd@machine_ip:port:dbname