Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Sletning Fra Db | SQLAlchemy
Databaser i Python

bookSletning Fra Db

I dette kapitel undersøger vi, hvordan man sletter poster fra en database ved hjælp af SQLAlchemy. Sletning af poster er afgørende ved databehandling, især når forældede eller unødvendige poster skal fjernes. SQLAlchemy tilbyder enkle men kraftfulde værktøjer til håndtering af sletninger, både for enkeltstående og masseoperationer.

Sletning af enkel post via ID

Den mest almindelige metode til at slette en post er ved at identificere den ud fra et specifikt kriterium, såsom dens ID. Her vises, hvordan et produkt slettes ved hjælp af dets ID.

product = session.query(Product).filter(Product.id == 1).first()

# Check if the product exists
if product:
    # Delete the product
    session.delete(product)
    session.commit()

Koden henter et produkt med ID 1, verificerer dets eksistens, markerer det til sletning med session.delete(product), og gennemfører ændringen med session.commit().

Sletning af flere poster

Nogle gange er det nødvendigt at slette flere poster på én gang baseret på bestemte betingelser. Dette er nyttigt ved opgaver som at fjerne udsolgte varer eller produkter under en bestemt pristærskel.

session.query(Product).filter(Product.is_in_stock == False).delete(synchronize_session="fetch")

# Commit the changes
session.commit()

Forespørgslen filtrerer produkter, der er udsolgt, sletter dem med .delete(synchronize_session="fetch"), og sikrer, at sessionen forbliver synkroniseret med databasen.

Masse-sletninger

For store datasæt er masse-sletninger effektive. Denne metode ændrer poster direkte i databasen uden at indlæse dem i hukommelsen, hvilket sparer tid og ressourcer.

session.query(Product).filter(Product.price < 100).delete(synchronize_session="fetch")

# Commit the changes
session.commit()

Dette eksempel filtrerer produkter med en pris under $100 og fjerner dem med .delete()-metoden, hvilket giver en hurtig og ressourceeffektiv løsning til store tabeller.

Sletning af alle poster i en tabel

Hvis det er nødvendigt at rydde en tabel fuldstændigt, gør SQLAlchemy det nemt med en enkelt forespørgsel.

session.query(Product).delete(synchronize_session="fetch")

# Commit the changes
session.commit()

Metoden .delete(synchronize_session="fetch") fjerner alle poster fra Product-tabellen, hvilket er nyttigt til nulstilling af data eller rydning af testmiljøer.

Opgave

Swipe to start coding

Din opgave er at færdiggøre koden ved at skrive de præcise linjer, der skal bruges til at slette produktet med navnet "Headphones" fra databasen.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 8
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Suggested prompts:

Can you explain what `synchronize_session="fetch"` does in these examples?

What happens if I try to delete a record that doesn't exist?

Are there any risks or best practices to consider when performing bulk deletions?

close

Awesome!

Completion rate improved to 4.76

bookSletning Fra Db

Stryg for at vise menuen

I dette kapitel undersøger vi, hvordan man sletter poster fra en database ved hjælp af SQLAlchemy. Sletning af poster er afgørende ved databehandling, især når forældede eller unødvendige poster skal fjernes. SQLAlchemy tilbyder enkle men kraftfulde værktøjer til håndtering af sletninger, både for enkeltstående og masseoperationer.

Sletning af enkel post via ID

Den mest almindelige metode til at slette en post er ved at identificere den ud fra et specifikt kriterium, såsom dens ID. Her vises, hvordan et produkt slettes ved hjælp af dets ID.

product = session.query(Product).filter(Product.id == 1).first()

# Check if the product exists
if product:
    # Delete the product
    session.delete(product)
    session.commit()

Koden henter et produkt med ID 1, verificerer dets eksistens, markerer det til sletning med session.delete(product), og gennemfører ændringen med session.commit().

Sletning af flere poster

Nogle gange er det nødvendigt at slette flere poster på én gang baseret på bestemte betingelser. Dette er nyttigt ved opgaver som at fjerne udsolgte varer eller produkter under en bestemt pristærskel.

session.query(Product).filter(Product.is_in_stock == False).delete(synchronize_session="fetch")

# Commit the changes
session.commit()

Forespørgslen filtrerer produkter, der er udsolgt, sletter dem med .delete(synchronize_session="fetch"), og sikrer, at sessionen forbliver synkroniseret med databasen.

Masse-sletninger

For store datasæt er masse-sletninger effektive. Denne metode ændrer poster direkte i databasen uden at indlæse dem i hukommelsen, hvilket sparer tid og ressourcer.

session.query(Product).filter(Product.price < 100).delete(synchronize_session="fetch")

# Commit the changes
session.commit()

Dette eksempel filtrerer produkter med en pris under $100 og fjerner dem med .delete()-metoden, hvilket giver en hurtig og ressourceeffektiv løsning til store tabeller.

Sletning af alle poster i en tabel

Hvis det er nødvendigt at rydde en tabel fuldstændigt, gør SQLAlchemy det nemt med en enkelt forespørgsel.

session.query(Product).delete(synchronize_session="fetch")

# Commit the changes
session.commit()

Metoden .delete(synchronize_session="fetch") fjerner alle poster fra Product-tabellen, hvilket er nyttigt til nulstilling af data eller rydning af testmiljøer.

Opgave

Swipe to start coding

Din opgave er at færdiggøre koden ved at skrive de præcise linjer, der skal bruges til at slette produktet med navnet "Headphones" fra databasen.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 8
single

single

some-alt