gpt4 book ai didi

python-3.x - 从 SQLAlchemy session 对象获取原始 psycopg2 游标对象

转载 作者:行者123 更新时间:2023-12-03 08:28:30 24 4
gpt4 key购买 nike

我正在使用它创建一个 session 对象

from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker

maiden_engine = create_engine(connection_url)
session = sessionmaker(maiden_engine)
connector = session()

现在对于某个用例,我想从这个 connector 对象获取 pyscopg2 cursor 对象,有没有办法可以进行这种转换能实现吗?

这就是通常创建光标对象的方式

import psycopg2
conn = psycopg2.connect(host, port, database, user, password, sslmode)
cursor = conn.cursor()

Note that this conversaion HAS to be made from connector object in the last line of first code snippet, I can not use maiden_engine or anything else.

最佳答案

在你的情况下connector变量是 <class 'sqlalchemy.orm.session.Session'>目的。 Session对象有 .bind返回 <class 'sqlalchemy.engine.base.Engine'> 的属性与 session 相关联。

Engine对象有 .raw_connection()返回(代理)原始 DBAPI 连接的方法,并调用 .cursor()返回原始 DBAPI Cursor目的。因此,

crsr = connector.bind.raw_connection().cursor()

关于python-3.x - 从 SQLAlchemy session 对象获取原始 psycopg2 游标对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65920713/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com