Löschen Sie einen Datensatz in Flask SQLAlchemy

Haider Ali 11 Dezember 2023
  1. Verwenden Sie Flask SQLAlchemy
  2. Löschen Sie einen Datensatz in Flask SQLAlchemy
Löschen Sie einen Datensatz in Flask SQLAlchemy

In diesem Handbuch erfahren Sie, was SQLAlchemy ist, wie Sie SQLAlchemy auf unsere Systeme herunterladen und wie Sie es implementieren. Außerdem werden wir demonstrieren, wie die Funktion delete in SQLAlchemy verwendet wird.

Verwenden Sie Flask SQLAlchemy

Anwendungsentwickler können SQLAlchemy verwenden, um die Leistungsfähigkeit und Flexibilität von SQL mit seinem Python SQL-Toolkit und Object Relational Mapper voll auszuschöpfen. Eine benutzerfreundliche Python-Domänensprache, die eine vollständige Suite von Enterprise-Persistenzmustern bietet, die für einen leistungsstarken und effizienten Datenbankzugriff ausgelegt sind.

SQLAlchemy enthält Dialekte für SQLite, PostgreSQL, MySQL, Oracle, MS-SQL, Firebird, Sybase und andere. Es unterstützt Python 2.5 und höher.

Andere unterstützte Plattformen sind Jython und Pypy.

Ein sehr bekanntes Beispiel für SQLAlchemy ist Yelp!

Ein großer Vorteil bei der Verwendung liegt in der Datenbank. Wir müssen unseren Python-Code nicht ändern, sondern nur die URI der Datenbank, wobei URI wie eine URL ist, aber für die Datenbank.

Laden Sie Flask SQLAlchemy herunter

Es gibt einen einfachen Befehl, der verwendet wird, um SQLAlchemy in unseren Systemen zu installieren. Für weitere Einzelheiten können Sie die Website besuchen, indem Sie hier klicken.

pip install flask-sqlalchemy

Nach der Installation importieren wir SQLAlchemy aus der Bibliothek flask_sqlalchemy, um die bereitgestellten Funktionen zu nutzen.

Löschen Sie einen Datensatz in Flask SQLAlchemy

Eines der Features von SQLAlchemy ist delete(), eine Operation zum Löschen der Daten vom Frontend zum Backend.

SQLAlchemy verwendet die Operation delete(), um Daten aus einer Datenbanktabelle zu entfernen. Ähnliche Objekte und Instanzen werden beim Erstellen einer Datenbank mithilfe einer Engine erstellt.

Im Folgenden sind die wesentlichen Funktionen aufgeführt, die in unserem Beispielcode verwendet werden.

die Funktion Kunde

Der einzige Zweck dieser Funktion besteht darin, eine Tabelle in der Datenbank zu erstellen. Mit dieser Funktion können wir Objekte hinzufügen und löschen.

Weitere Erläuterungen werden nachstehend bereitgestellt.

die Session-Grundlagen

Jede Abfrage generiert eine Sitzungs-ID, die als Haltezone für die Daten verwendet wird, um eine zukünftige Bezugnahme zu erleichtern. Mit einfachen Worten, die Sitzung stellt alle Interaktionen mit der Datenbank her und speichert alle Objekte, die wir während ihrer Lebensdauer verwendet haben.

In dem Beispiel am Ende dieses Leitfadens verwenden wir drei Aufrufe von Session: session.add(), session.delete() und session.commit().

Die Aufrufe session.add() und session.delete() werden verwendet, um ein bestimmtes Objekt hinzuzufügen und zu löschen, das in seinen Parametern erwähnt wird. Es beginnt normalerweise zunächst als unbegründetes Formular, bis wir das session.commit() verwenden, dann speichert es die ihm übergebenen Daten.

den Aufruf session.commit()

Wenn alle Operationen erfolgreich sind, wird dieser Aufruf ausgeführt und fährt fort, alle ihm bereitgestellten Daten zu speichern. Wenn jedoch eine Operation nicht ausgeführt wird oder eine Ausnahme angezeigt wird, wird ein als session.rollback() bekannter Aufruf die durchgeführte Transaktion rückgängig machen.

Aber wir müssen nur von session.commit() wissen, also gehen wir nicht auf diesen Aufruf ein.

Unten ist ein Beispiel für den Code, der den oben erwähnten Aufruf verwendet und zeigt, wie Daten aus der Datenbank gelöscht oder entfernt werden.

die Einfügen-Funktion

Diese Funktion erstellt ein neues Objekt in der in der Klasse Kunde erstellten Tabelle. Es ruft den Aufruf session.add() auf, um das bereitgestellte Objekt in seine Parameter einzufügen.

Anschließend wird mit session.commit() die aktualisierte Tabelle in der Datenbank gespeichert.

die Löschen-Funktion

Diese Funktion ist das Gegenteil der Funktion Einfügen. Mit dieser Funktion wird das in seinen Parametern angegebene Objekt gelöscht.

Hier löschen wir mit session.delete() das angegebene Objekt und speichern mit session.commit() die aktualisierte Tabelle in der Datenbank.

Die config hier wird verwendet, um die Datenbank über die uri anzugeben. Wir müssen nur das uri unserer Datenbank hinzufügen.

from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)

# TODO Specify Your DataBase Uri
# TODO Specify Your DataBase Uriapp.config['SQLALCHEMY_DATABASE_URI'] =

# initiating the sqlalchemy object
db = SQLAlchemy(app)


class Customer(db.Model):  # a table is being created here
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(50))
    address = db.Column(db.String(200))
    email = db.Column(db.String(50))

    def __init__(self, id, name, address, email):
        self.id = id
        self.name = name
        self.address = address
        self.email = email


def insert(id, name, address, email):
    # create the object of model class
    c1 = Customer(id, name, address, email)
    db.session.add(c1)
    db.session.commit()

    return "Customer Added Successfully"


def delete(self, id):  # Data is being deleted here
    dc = Customerque.ry.get(id)
    db.session.delete(dc)
    db.session.commit()

    return "Customer Deleted SuccessFully"

In diesem Beispiel müssten wir eine Datenbank URI bereitstellen, um diese Funktionen auszuführen. Nach der Bereitstellung des URI wird die Klasse Customer ausgeführt und eine Tabelle erstellt, mit der wir arbeiten können.

Danach können wir über die Funktion Einfügen beliebig viele Objekte erstellen, und die Funktion Löschen löscht dann das gewünschte Objekt (falls vorhanden).

Autor: Haider Ali
Haider Ali avatar Haider Ali avatar

Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.

LinkedIn

Verwandter Artikel - Flask SQLAlchemy