SQL Delete Cascade

SQL Delete Cascade

Die SQL bei Löschenkaskade ist eine Einschränkung, mit der SQL Zeilen löschen kann, die einer bestimmten übergeordneten Tabelle zugeordnet sind.

Mit diesem Artikel werden wir diskutieren, wie das Löschen der Kaskadenbeschränkungen in SQL implementiert werden kann.

SQL Cascade Praktisches Beispiel

Angenommen, wir haben zwei Tabellen, die Entwicklerinformationen und die Beiträge eines anderen Entwicklers enthalten. Der Entwickler hat mehrere Beiträge.

Hier möchten wir eine Beziehung herstellen, in der alle Beiträge aus der anderen Tabelle automatisch entfernt werden, wenn der Entwickler aus der Tabelle entfernt wird.

Beginnen wir mit der Erstellung der Tabelle der Entwickler:

Tischentwickler erstellen (
Dev_id Serien -Primärschlüssel,
full_name varchar (100) nicht null,
Dev_Language Varchar (255) NICHT NULL
);

Lassen Sie uns als nächstes eine Beiträge erstellen, wie gezeigt:

Tabelleneintrag erstellen (
repo_id serieller Primärschlüssel,
repo_name varchar (100) nicht null,
comment_id int nicht null,
Dev_id Integer nicht null,
Fremdschlüssel (dev_id)
Referenzen Entwickler (dev_id)
Bei Löschen der Kaskade
);

Diese Tabelle deklariert eine fremde Schlüsselbeschränkung, die eine Kaskadenbeschränkung löscht und auf die Dev_ID in der Tabelle der Entwickler verweist.

Lassen Sie uns wie gezeigt Beispieldaten zum Testen hinzufügen:

In Entwickler einfügen (full_name, dev_lunganguage)
WERTE
('Romilly Roy Reeve', 'Python 3'),
('Anastasija Jimi Hirsch', 'C ++'),
('Marylène Nina Capella', 'Rost')

Die Tabelle der Entwickler sollte wie gezeigt Beispieldaten haben:

Wählen Sie * von Entwicklern aus;

Fügen Sie Beispieldaten in die Tabelle der Beiträge hinzu, wie gezeigt:

Einfügen in Beitrag (repo_name, commit_id, dev_id)
WERTE
('Repo1', 464576, 1),
('Repo1', 445876, 2),
('Repo1', 466466, 3);

Die Beitragstabelle sollte Daten enthalten wie:

Wählen Sie * aus Beitrag;

Um zu veranschaulichen, wie bei Löschen der Kaskadenbeschränkungen funktioniert, lassen Sie uns den Entwickler mit der ID von 3 entfernen.

Von Entwicklern löschen, wobei dev_id = 3;

Wenn Sie die Beitragstabelle abfragen, werden Sie feststellen, dass der Datensatz für dev_id 3 ebenfalls fallen gelassen wurde.

Wählen Sie * aus Beitrag;

So verwenden Sie sie bei Löschen von Kaskadenbeschränkungen in SQL.

Vielen Dank für das Lesen!!