Sqlalchemy 简明教程
SQLAlchemy ORM - Creating Session
为了与数据库进行交互,我们需要获得其句柄。会话对象是数据库的句柄。使用 sessionmaker() 定义会话类 - 一个可配置的会话工厂方法,它绑定到前面创建的引擎对象。
In order to interact with the database, we need to obtain its handle. A session object is the handle to database. Session class is defined using sessionmaker() – a configurable session factory method which is bound to the engine object created earlier.
from sqlalchemy.orm import sessionmaker
Session = sessionmaker(bind = engine)
然后使用其默认构造函数设置会话对象,如下所示 −
The session object is then set up using its default constructor as follows −
session = Session()
下面列出会话类的一些经常需要的方法 −
Some of the frequently required methods of session class are listed below −
Sr.No. |
Method & Description |
1 |
begin() begins a transaction on this session |
2 |
add() places an object in the session. Its state is persisted in the database on next flush operation |
3 |
add_all() adds a collection of objects to the session |
4 |
commit() flushes all items and any transaction in progress |
5 |
delete() marks a transaction as deleted |
6 |
execute() executes a SQL expression |
7 |
expire() marks attributes of an instance as out of date |
8 |
flush() flushes all object changes to the database |
9 |
invalidate() closes the session using connection invalidation |
10 |
rollback() rolls back the current transaction in progress |
11 |
close() Closes current session by clearing all items and ending any transaction in progress |