Outils pour utilisateurs

Outils du site


python:sqlalchemy

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
python:sqlalchemy [2023/12/21 07:27]
marclebrun [Requête SQL]
python:sqlalchemy [2023/12/22 08:34] (Version actuelle)
marclebrun [Configuration de la connexion]
Ligne 43: Ligne 43:
     dbpath,     dbpath,
     fb_library_name     fb_library_name
-)+))
 </​code>​ </​code>​
  
 ===== Requêtes SQL ===== ===== Requêtes SQL =====
 +
 +Requête Select :
  
 <code python> <code python>
Ligne 53: Ligne 55:
 with engine.connect() as conn: with engine.connect() as conn:
     result = conn.execute(text("​select id, nom from clients order by nom"))     result = conn.execute(text("​select id, nom from clients order by nom"))
 +    ​
 +    # Afficher tous les résultats dans une liste de tuples :
     print(result.all())     print(result.all())
 +    ​
 +    # Parcourir le résultat et afficher les lignes individuellement :
 +    for row in result:
 +        print(f"​{row.id} : {row.nom.strip()}"​)
 </​code>​ </​code>​
 +
 +Requêtes transactionnelles avec un **commit()** à la fin :
  
 <code python> <code python>
Ligne 66: Ligne 76:
     )     )
     conn.commit()     conn.commit()
 +</​code>​
 +
 +Requêtes transactionnelles dans un bloc **begin()** (le commit se fait implicitement) :
 +
 +<code python>
 +from sqlalchemy import text
 +
 +with engine.begin() as conn:
 +    conn.execute(
 +        text("​INSERT INTO some_table (x, y) VALUES (:x, :y)"),
 +        [{"​x":​ 1, "​y":​ 1}, {"​x":​ 2, "​y":​ 4}],
 +    )
 </​code>​ </​code>​
  
python/sqlalchemy.1703143644.txt.gz · Dernière modification: 2023/12/21 07:27 par marclebrun