sqlalchemy文档资料翻译(三)

本文深入探讨了SQLAlchemy ORM中Session对象的创建过程及其在数据库操作中的重要角色。通过实例展示了如何在应用中声明和配置Session类,以及如何在需要与数据库进行交互时实例化Session对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[程序]sqlalchemy文档资料翻译(三) -- 创建 Session

英文原文链接地址

我们现在开始讨论数据库。ORM 通过 Session 来操纵数据库。当我们第一次创建应用,在 create_engine() 命令同级,我们定义一个 Session 类,该类是提供 Session 对象的工厂:

>>> from sqlalchemy.orm import sessionmaker
>>> Session = sessionmaker(bind=engine)

在那些还没有指定 Engine 的应用中,我们可以采用如下的方式来声明:

>>> Session = sessionmaker()

稍后,当你通过 create_engine() 创建了你的 engine 后,我们可以使用 configure() 来将其与 Session 对象关联:

>>> Session.configure(bind=engine)  # once engine is available

定制 Session 类将创建新的 Session 对象来绑定到我们的数据库。其他事务特性也可在 sessionmaker() 中定义,这些我们将在后续的章节中讲解。一旦你需要和数据库发生交互,你需要实例化 Session

>>> session = Session()

上述的 Session 与我们的 SQLite 引擎关联,但此时并不开启任何连接。当其第一次被使用的时候,他将从由引擎维护的连接池中检索出可用连接,并一直使用该连接知道提交所有的改变或关闭 session 对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值