Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
dev:python:sqlalchemy [2015/02/10 17:35] – root | dev:python:sqlalchemy [2024/12/02 23:31] (Version actuelle) – yoann | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | : | ||
+ | |||
+ | |||
====== SQLAlchemy ====== | ====== SQLAlchemy ====== | ||
Ligne 12: | Ligne 15: | ||
===== Principes ===== | ===== Principes ===== | ||
- | Sous SQLAlchemy, on manipule 3 éléments importants: | + | Avec SQLAlchemy, on manipule 3 éléments importants: |
* L' | * L' | ||
* Le //mapper// qui se charge de faire correspondre la classe Python à une table dans la base de données. | * 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. | * Un objet class qui définit comment un enregistrement dans la base de données correspond à un objet Python. | ||
- | Pour ne pas avoir à écrire du code pour les | + | 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 ===== | ===== Références ===== | ||
* http:// | * http:// | ||
+ | * https:// | ||