Mettre à jour des données dans une table

Introduction aux bases de données en Python

Jason Myers

Co-Author of Essential SQLAlchemy and Software Engineer

Mettre à jour des données dans une table

  • S'effectue avec l'instruction update()
  • Semblable à insert(), mais avec une clause where pour cibler l'enregistrement à mettre à jour
  • Ajoutez les valeurs à modifier avec values() sous forme de paires colonne=valeur
Introduction aux bases de données en Python

Mettre à jour une ligne

from sqlalchemy import update

stmt = update(employees) stmt = stmt.where(employees.columns.id == 3) stmt = stmt.values(active=True)
result_proxy = connection.execute(stmt) print(result_proxy.rowcount)
1
Introduction aux bases de données en Python

Mettre à jour plusieurs lignes

  • Rédigez une clause where qui sélectionne tous les enregistrements à mettre à jour
Introduction aux bases de données en Python

Insérer plusieurs lignes

stmt = update(employees)
stmt = stmt.where(employees.columns.active == True)

stmt = stmt.values(active=False, salary=0.00)
result_proxy = connection.execute(stmt) print(result_proxy.rowcount)
3
Introduction aux bases de données en Python

Mises à jour corrélées

new_salary = select([employees.columns.salary])
new_salary = new_salary.order_by(
    desc(employees.columns.salary))
new_salary = new_salary.limit(1)

stmt = update(employees)
stmt = stmt.values(salary=new_salary)
result_proxy = connection.execute(stmt)
print(result_proxy.rowcount)
3
Introduction aux bases de données en Python

Mises à jour corrélées

  • Utilise une instruction select() pour trouver la valeur de la colonne à mettre à jour
  • Souvent utilisé pour plafonner une valeur ou harmoniser une chaîne avec une abréviation d'une autre table
Introduction aux bases de données en Python

Passons à la pratique !

Introduction aux bases de données en Python

Preparing Video For Download...