ORM работает с моделями, связями и состоянием объектов, формируя SQL за вас. Чистый SQL задаёт запрос непосредственно; SQLAlchemy также имеет Core, не сводящийся к ORM.
В чем разница между ORM (SQLAlchemy / Django ORM) и чистым SQL?
ORM работает с моделями, связями и состоянием объектов, формируя SQL за вас. Чистый SQL задаёт запрос непосредственно; SQLAlchemy также имеет Core, не сводящийся к ORM.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
ORM работает с моделями, связями и состоянием объектов, формируя SQL за вас. Чистый SQL задаёт запрос непосредственно; SQLAlchemy также имеет Core, не сводящийся к ORM.
ORM удобна для типового CRUD, но может скрывать дополнительные запросы и создавать лишние объекты. SQL даёт точный контроль над joins, агрегациями и особенностями СУБД, требуя ручной обработки результата и дисциплины параметризации. Оба подхода нуждаются в транзакциях и анализе производительности. Их можно сочетать: важнее ясный контракт и наблюдаемый запрос, чем принципиальный отказ от одного инструмента.