Как подключиться к БД Oracle в PyCharm

Не могу понять что делать. Прошу помощи

cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 32-bit Oracle Client library: "C:\app\gm\product\18.0.0\dbhomeXE\bin\oci.dll is not the correct architecture". See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help

import cx_Oracle

conn = cx_Oracle.connect('hr/hr@DESKTOP-K1VD24O')
cursor = conn.cursor()


if __name__ == '__main__':
    print('cx_Oracle')
    print(conn.version)

Ответы (1 шт):

Автор решения: 0xdb

Причина: битность Python и библотеки клиента не совпадают.

Судя по пути, указанному в сообшении об ошибке, найдена библиотека встронного в БД клиента и его битность, как и самой БД - 64.

Необходимо установить 32-bit Windows Instant Client (для 18c подойдёт 19.9.0.0.0 Basic Package). Имя каталога, куда будет распакован архив, необходимо, что предпочтительней, указать явно при инициализации клиента, или добавить в переменную окружения PATH:

import cx_Oracle as cxora

cxora.init_oracle_client (lib_dir='d:/app/oracle/instantclient_19_6')

conn = cxora.connect ('connect_string')
print('Connected', conn.version, 'client', cxora.clientversion ()) 

У меня выводит:

Connected 19.3.0.0.0 client (19, 6, 0, 0, 0)

→ Ссылка