SQLAlchemy Oracle - InvalidRequestError: could not retrieve isolation level

SQLAlchemy Oracle - InvalidRequestError: could not retrieve isolation level

我在通过 SQLAlchemy 连接访问 Oracle 数据库中的表时遇到问题。具体来说,我正在使用 Kedro catalog.load('table_name') 并收到错误消息 Table table_name not found。所以我决定使用此答案中列出的方法测试我的连接:.

from sqlalchemy import create_engine
engine = create_engine('oracle+cx_oracle://USER:PASSWORD@HOST:PORT/?service_name=SERVICE_NAME')
engine.connect()

错误:InvalidRequestError: could not retrieve isolation level

我已经尝试明确添加隔离级别,如 documentation 中所述:

engine = create_engine('oracle+cx_oracle://USER:PASSWORD@HOST:PORT/?service_name=SERVICE_NAME', execution_options={'isolation_level': 'AUTOCOMMIT'})

还有这个:

engine.connect().execution_options(isolation_level='AUTOCOMMIT')

还有这个:

connection = engine.connect()
connection = connection.execution_options(
    isolation_level="AUTOCOMMIT"
)

但我在所有情况下都遇到相同的错误。

从 SqlAlchemy 1.3.21 升级到 1.3.22 解决了这个问题。