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 |