В чём разница между SQLAlchemy Core и ORM?

Middle
313 просмотров
AFK Offer AI

Core — SQL Expression Language, конструктор SQL-запросов через Python-объекты: select(users).where(users.c.age > 18). Ближе к SQL, полный контроль. ORM — маппинг классов на таблицы, работа с объектами: session.query(User).filter(User.age > 18). Удобнее для CRUD, relationships, lazy loading. Core быстрее — нет overhead identity map, unit of work. Для сложных запросов и высокой нагрузки — Core. Для бизнес-логики с relationships — ORM. Можно комбинировать в одном проекте.

Следующий вопрос

Как работает logging в Python?