Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| dev:python:sqlalchemy [2015/02/09 17:31] – créée root | dev:python:sqlalchemy [2024/12/02 23:31] (Version actuelle) – yoann | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | : | ||
| + | |||
| + | |||
| ====== SQLAlchemy ====== | ====== SQLAlchemy ====== | ||
| - | L' ORM est une technique employée par les langages orientés objets permettant de convertir des données entre systèmes ayant des types de données incompatibles. Les types utilisés en interne par les langages | + | L' ORM est une technique employée par les langages orientés objets permettant de convertir des données entre systèmes ayant des types de données incompatibles. |
| + | |||
| + | Les langages | ||
| + | |||
| + | Pour mieux faire face à la complexité de gestion des variables non scalaire notamment lorsque l'on souhaite les stocker dans des bases de données, les ORM ont été développés. L' | ||
| + | |||
| + | L'ORM ajoute un niveau d' | ||
| + | |||
| + | |||
| + | ===== Principes ===== | ||
| + | |||
| + | Avec SQLAlchemy, on manipule 3 éléments importants: | ||
| + | * L' | ||
| + | * Le //mapper// qui se charge de faire correspondre la classe Python à une table dans la base de données. | ||
| + | * Un objet class qui définit comment un enregistrement dans la base de données correspond à un objet Python. | ||
| + | |||
| + | SQLAlchemy fournit declarative qui permet de regrouper le code des classes Table, mapper au sein d'une même définition de classe. | ||
| + | |||
| + | |||
| + | ==== La fonction create_engine() ==== | ||
| + | |||
| + | Petite remarque à propos de la syntaxe de la chaîne de caractère passée en paramètre à la fonction **create_engine()**. C'est une URL. Pour utiliser une base **sqlite** attention au nombre de caractères obliques: | ||
| + | |||
| + | < | ||
| + | # Base temporaire stockée en mémoire RAM | ||
| + | sqlite:///: | ||
| + | |||
| + | # Chemin relatif vers la base | ||
| + | sqlite:/// | ||
| + | |||
| + | # Chemin absolu vers la base | ||
| + | sqlite://// | ||
| + | </ | ||
| + | |||
| + | ===== Références ===== | ||
| + | |||
| + | * http:// | ||
| + | * https:// | ||