Aktualisierung in die DB
In diesem Kapitel wird erläutert, wie Datensätze aktualisiert werden können, indem SQLAlchemy verwendet wird. Das Aktualisieren von Datensätzen ist entscheidend, wenn bestehende Daten in Tabellen geändert werden müssen, beispielsweise bei der Anpassung von Beschreibungen oder anderen Feldern. SQLAlchemy stellt effiziente und unkomplizierte Methoden für Aktualisierungen bereit.
Aktualisierung eines einzelnen Datensatzes
Die häufigste Aktualisierungsoperation ist die Modifikation eines einzelnen Datensatzes. Hierfür muss das Objekt abgerufen, dessen Attribute geändert und anschließend die Änderungen gespeichert werden.
product = session.query(Product).filter(Product.id == 1).first()
if product:
product.description = "Updated description for high-end gaming laptop"
session.commit()
Um ein Produkt anhand seiner ID abzurufen, wird eine Abfrage mit einem Filter für die gewünschte ID verwendet. Nach der Änderung der description
des Produkts speichert der Aufruf von session.commit()
die Änderungen in der Datenbank.
Aktualisierung mehrerer Datensätze
Gelegentlich ist es erforderlich, mehrere Datensätze gleichzeitig zu aktualisieren. SQLAlchemy ermöglicht die Verwendung von filter()
in Kombination mit der update()
-Methode, um Datensätze effizient zu ändern.
session.query(Product).filter(Product.price > 1000).update(
{Product.description: "Updated description for premium products"},
synchronize_session="fetch"
)
session.commit()
Um Produkte mit einem Preis über $1000 zu filtern, wird eine Abfrage mit einer Bedingung für den Preis verwendet. Die update
-Methode wendet die gewünschten Änderungen auf alle passenden Datensätze an, während das Argument synchronize_session="fetch"
sicherstellt, dass die Sitzung nach der Aktualisierung synchronisiert bleibt.
Massenaktualisierungen
Für umfangreiche Änderungen sind Massenaktualisierungen effizienter, da sie Datensätze direkt in der Datenbank ändern, ohne Objekte in den Speicher zu laden. Dies ist ideal, um viele Zeilen gleichzeitig zu aktualisieren.
session.query(Product).filter(Product.price < 500).update(
{Product.description: "Generic description for affordable products"},
synchronize_session="fetch"
)
session.commit()
Dieser Code aktualisiert die description für alle Produkte mit einem Preis unter $500 in einem einzigen Vorgang. Massenaktualisierungen sind schneller und sparen Speicher, verglichen mit der individuellen Aktualisierung von Datensätzen.
Swipe to start coding
- Alle Produkte abrufen aus der Datenbank.
- Den neuen Preis berechnen für jedes Produkt, indem er um 20 % reduziert wird.
- Die aktualisierten Preise in der Datenbank speichern.
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 4.76
Aktualisierung in die DB
Swipe um das Menü anzuzeigen
In diesem Kapitel wird erläutert, wie Datensätze aktualisiert werden können, indem SQLAlchemy verwendet wird. Das Aktualisieren von Datensätzen ist entscheidend, wenn bestehende Daten in Tabellen geändert werden müssen, beispielsweise bei der Anpassung von Beschreibungen oder anderen Feldern. SQLAlchemy stellt effiziente und unkomplizierte Methoden für Aktualisierungen bereit.
Aktualisierung eines einzelnen Datensatzes
Die häufigste Aktualisierungsoperation ist die Modifikation eines einzelnen Datensatzes. Hierfür muss das Objekt abgerufen, dessen Attribute geändert und anschließend die Änderungen gespeichert werden.
product = session.query(Product).filter(Product.id == 1).first()
if product:
product.description = "Updated description for high-end gaming laptop"
session.commit()
Um ein Produkt anhand seiner ID abzurufen, wird eine Abfrage mit einem Filter für die gewünschte ID verwendet. Nach der Änderung der description
des Produkts speichert der Aufruf von session.commit()
die Änderungen in der Datenbank.
Aktualisierung mehrerer Datensätze
Gelegentlich ist es erforderlich, mehrere Datensätze gleichzeitig zu aktualisieren. SQLAlchemy ermöglicht die Verwendung von filter()
in Kombination mit der update()
-Methode, um Datensätze effizient zu ändern.
session.query(Product).filter(Product.price > 1000).update(
{Product.description: "Updated description for premium products"},
synchronize_session="fetch"
)
session.commit()
Um Produkte mit einem Preis über $1000 zu filtern, wird eine Abfrage mit einer Bedingung für den Preis verwendet. Die update
-Methode wendet die gewünschten Änderungen auf alle passenden Datensätze an, während das Argument synchronize_session="fetch"
sicherstellt, dass die Sitzung nach der Aktualisierung synchronisiert bleibt.
Massenaktualisierungen
Für umfangreiche Änderungen sind Massenaktualisierungen effizienter, da sie Datensätze direkt in der Datenbank ändern, ohne Objekte in den Speicher zu laden. Dies ist ideal, um viele Zeilen gleichzeitig zu aktualisieren.
session.query(Product).filter(Product.price < 500).update(
{Product.description: "Generic description for affordable products"},
synchronize_session="fetch"
)
session.commit()
Dieser Code aktualisiert die description für alle Produkte mit einem Preis unter $500 in einem einzigen Vorgang. Massenaktualisierungen sind schneller und sparen Speicher, verglichen mit der individuellen Aktualisierung von Datensätzen.
Swipe to start coding
- Alle Produkte abrufen aus der Datenbank.
- Den neuen Preis berechnen für jedes Produkt, indem er um 20 % reduziert wird.
- Die aktualisierten Preise in der Datenbank speichern.
Lösung
Danke für Ihr Feedback!
single