Некоторые отличия SQLAlchemy и Django в плане работы с базами данных:
- Подходы к отображению. 2 Django ORM использует паттерн active record, а SQLAlchemy — data mapper. 2 Active record подразумевает, что каждая строка в базе данных будет обёрнута в отдельный python-объект. 2 Подход data mapper позволяет управлять этим отображением. 2
- Гибкость. 2 Django ORM — часть фреймворка Django, типичные запросы на ней сделать легко. 2 SQLAlchemy позволяет создавать очень сложные запросы. 2
- Автоматическое создание первичных ключей. 4 Django может создавать их автоматически для таблиц, а SQLAlchemy — нет, их нужно создавать вручную для каждой таблицы. 34
При этом и Django, и SQLAlchemy можно использовать с MySQL, PostgreSQL, Oracle и SQLite. 45