SQLAlchemy — это популярный инструментарий SQL и Object Relational Mapper . Он написан на Python и предоставляет полную мощность и гибкость SQL для разработчика приложений. Это кроссплатформенное программное обеспечение с открытым исходным кодом, выпущенное по лицензии MIT.
SQLAlchemy славится своим объектно-реляционным отображением (ORM), с помощью которого классы могут быть сопоставлены с базой данных, что позволяет с самого начала четко развязать объектную модель и схему базы данных.
Поскольку размер и производительность баз данных SQL начинают иметь значение, они ведут себя не так, как коллекции объектов. С другой стороны, когда абстракция в коллекциях объектов начинает иметь значение, они ведут себя не так, как таблицы и строки. SQLAlchemy стремится учитывать оба эти принципа.
По этой причине он принял шаблон отображения данных (например, Hibernate), а не шаблон активной записи, используемый рядом других ORM . Базы данных и SQL будут рассматриваться с другой стороны, используя SQLAlchemy.
Майкл Байер — оригинальный автор SQLAlchemy. Его первоначальная версия была выпущена в феврале 2006 года. Последняя версия имеет номер 1.2.7, выпущенную совсем недавно, в апреле 2018 года.
Что такое ORM?
ORM (Object Relational Mapping) — это метод программирования для преобразования данных между несовместимыми системами типов в объектно-ориентированных языках программирования. Обычно система типов, используемая в объектно-ориентированном (ОО) языке, таком как Python, содержит нескалярные типы. Они не могут быть выражены как примитивные типы, такие как целые числа и строки. Следовательно, OO-программист должен преобразовывать объекты в скалярных данных для взаимодействия с базой данных. Однако типы данных в большинстве продуктов баз данных, таких как Oracle, MySQL и т. Д., Являются первичными.
В системе ORM каждый класс отображается на таблицу в базовой базе данных. Вместо того, чтобы писать утомительный код для взаимодействия с базой данных самостоятельно, ORM позаботится об этих проблемах, пока вы можете сосредоточиться на программировании логики системы.
SQLAlchemy — настройка среды
Давайте обсудим настройки среды, необходимые для использования SQLAlchemy.
Любая версия Python выше 2.7 необходима для установки SQLAlchemy. Самый простой способ установить это с помощью Python Package Manager, pip . Эта утилита входит в стандартную поставку Python.
pip install sqlalchemy
Используя приведенную выше команду, мы можем загрузить последнюю выпущенную версию SQLAlchemy с python.org и установить ее в вашей системе.
В случае дистрибутива Python от Anaconda SQLAlchemy можно установить с терминала conda с помощью следующей команды:
conda install -c anaconda sqlalchemy
Также можно установить SQLAlchemy из исходного кода ниже —
python setup.py install
SQLAlchemy предназначен для работы с реализацией DBAPI, созданной для конкретной базы данных. Он использует систему диалектов для связи с различными типами реализаций DBAPI и баз данных. Все диалекты требуют, чтобы был установлен соответствующий драйвер DBAPI.
Следующие диалекты включены —
- жар-птица
- Microsoft SQL Server
- MySQL
- оракул
- PostgreSQL
- SQLite
- Sybase
Чтобы проверить правильность установки SQLAlchemy и узнать его версию, введите в командной строке Python следующую команду: