SQLAlchemy - Introduction

SQLAlchemy est une boîte à outils SQL populaire et Object Relational Mapper. Il est écrit enPythonet donne toute la puissance et la flexibilité de SQL à un développeur d'applications. C'est unopen source et cross-platform software publié sous licence MIT.

SQLAlchemy est célèbre pour son mappeur objet-relationnel (ORM), à l'aide duquel les classes peuvent être mappées à la base de données, permettant ainsi au modèle objet et au schéma de base de données de se développer de manière clairement découplée depuis le début.

Comme la taille et les performances des bases de données SQL commencent à avoir de l'importance, elles se comportent moins comme des collections d'objets. D'un autre côté, comme l'abstraction dans les collections d'objets commence à avoir de l'importance, elles se comportent moins comme des tables et des lignes. SQLAlchemy vise à intégrer ces deux principes.

Pour cette raison, il a adopté le data mapper pattern (like Hibernate) rather than the active record pattern used by a number of other ORMs. Les bases de données et SQL seront visualisées dans une perspective différente à l'aide de SQLAlchemy.

Michael Bayer est l'auteur original de SQLAlchemy. Sa version initiale a été publiée en février 2006. La dernière version est numérotée 1.2.7, publiée aussi récemment qu'en avril 2018.

Qu'est-ce que l'ORM?

ORM (Object Relational Mapping) est une technique de programmation permettant de convertir des données entre des systèmes de types incompatibles dans des langages de programmation orientés objet. Habituellement, le système de types utilisé dans un langage orienté objet (OO) comme Python contient des types non scalaires. Ceux-ci ne peuvent pas être exprimés sous forme de types primitifs tels que des entiers et des chaînes. Par conséquent, le programmeur OO doit convertir des objets en données scalaires pour interagir avec la base de données principale. Cependant, les types de données dans la plupart des produits de base de données tels qu'Oracle, MySQL, etc., sont primaires.

Dans un système ORM, chaque classe correspond à une table de la base de données sous-jacente. Au lieu d'écrire vous-même un code d'interfaçage de base de données fastidieux, un ORM s'occupe de ces problèmes pour vous pendant que vous pouvez vous concentrer sur la programmation des logiques du système.

SQLAlchemy - Configuration de l'environnement

Laissez-nous discuter de la configuration environnementale requise pour utiliser SQLAlchemy.

Toute version de Python supérieure à 2.7 est nécessaire pour installer SQLAlchemy. Le moyen le plus simple d'installer est d'utiliser Python Package Manager,pip. Cet utilitaire est fourni avec la distribution standard de Python.

pip install sqlalchemy

En utilisant la commande ci-dessus, nous pouvons télécharger le latest released versionde SQLAlchemy à partir de python.org et installez-le sur votre système.

Dans le cas d'une distribution anaconda de Python, SQLAlchemy peut être installé à partir de conda terminal en utilisant la commande ci-dessous -

conda install -c anaconda sqlalchemy

Il est également possible d'installer SQLAlchemy à partir du code source ci-dessous -

python setup.py install

SQLAlchemy est conçu pour fonctionner avec une implémentation DBAPI construite pour une base de données particulière. Il utilise un système de dialecte pour communiquer avec divers types d'implémentations et de bases de données DBAPI. Tous les dialectes nécessitent l'installation d'un pilote DBAPI approprié.

Voici les dialectes inclus -

  • Firebird
  • Microsoft SQL Server
  • MySQL
  • Oracle
  • PostgreSQL
  • SQLite
  • Sybase

Pour vérifier si SQLAlchemy est correctement installé et connaître sa version, entrez la commande suivante dans l'invite Python -

>>> import sqlalchemy
>>>sqlalchemy.__version__
'1.2.7'