В SQLAlchemy «сеанс объекта» относится к объекту сеанса, который действует как посредник между приложением и базой данных. Он обеспечивает способ взаимодействия с базой данных и выполнения различных операций. Вот некоторые часто используемые методы объекта сеанса SQLAlchemy с примерами кода:
-
add(): добавляет объект в сеанс.
from sqlalchemy.orm import sessionmaker from sqlalchemy import create_engine from models import User # Create a session Session = sessionmaker(bind=engine) session = Session() # Create a new user object new_user = User(name="John Doe", age=25) # Add the user object to the session session.add(new_user) -
commit(): фиксирует ожидающие изменения в базе данных.
# Commit the changes session.commit() -
delete(): удаляет объект из сеанса и базы данных.
# Delete an object from the session session.delete(user_object) # Commit the changes to delete the object from the database session.commit() -
query(): выполняет запрос в сеансе.
# Query all users users = session.query(User).all() # Filter users based on a condition adult_users = session.query(User).filter(User.age >= 18).all() -
rollback(): откатывает текущую транзакцию.
# Rollback the current transaction session.rollback() -
flush(): Сбрасывает все ожидающие изменения в базу данных без фиксации.
# Flush the changes session.flush() -
close(): закрывает сеанс.
# Close the session session.close()
Это всего лишь несколько примеров методов, доступных в объекте сеанса SQLAlchemy. SQLAlchemy предоставляет больше методов и функций для взаимодействия с базами данных с использованием сеанса.