Praktische Methode zum Löschen verknüpfter Tabellen in MySQL

Praktische Methode zum Löschen verknüpfter Tabellen in MySQL

In der MySQL-Datenbank können Tabellen, nachdem sie miteinander verknüpft wurden, nicht mehr beliebig gelöscht werden, da sonst die Struktur aller verknüpften Tabellen beeinträchtigt wird. Wie kann man verknüpfte Tabellen also sicher löschen? Lassen Sie es uns herausfinden.

Löschen einer Fremdschlüsseleinschränkung aus einer Tabelle

Ein Fremdschlüssel ist ein spezielles Feld, das eine Tabelle mit ihrer übergeordneten Tabelle verknüpft. Beim Erstellen der Tabelle sind die Fremdschlüsseleinschränkungen bereits festgelegt. Um die Zuordnung zwischen ihnen zu entfernen, müssen Sie die folgende Anweisung verwenden.

Tabelle ändern, Tabellenname, Fremdschlüssel löschen, Fremdschlüsselalias;

Der Fremdschlüsselaliasparameter bezieht sich auf den Fremdschlüsselcode, der beim Erstellen der Tabelle festgelegt wurde.

2. Löschen Sie die gemeinsame Tabelle, die nicht verknüpft ist

Tabellennamen löschen;

Wenn Sie eine Tabelle löschen, werden auch alle Daten in der Tabelle gelöscht. Wenn Sie eine Tabelle löschen, sollten Sie zunächst die Daten in der Tabelle sichern.

3. Löschen Sie die übergeordnete Tabelle, die mit anderen Tabellen verknüpft ist

Beim Löschen einer Tabelle mit einer zugehörigen Beziehung führt die Verwendung von „Drop Table Example1“ zu einem Fehler, da ein Fremdschlüssel vorhanden ist, der von der Tabelle abhängt.

Beispielsweise wird eine Tabelle „example4“ erstellt, die von der Tabelle „example1“ abhängt, und der Fremdschlüssel „stu_id“ der Tabelle „example4“ hängt vom Primärschlüssel der Tabelle „example1“ ab. Die Tabelle „example1“ ist die übergeordnete Tabelle der Tabelle „example4“.

Wenn Sie die Tabelle „example4“ löschen möchten, müssen Sie zuerst diese Abhängigkeit entfernen. Am einfachsten ist es, zuerst die untergeordnete Tabelle Beispiel4 und dann die übergeordnete Tabelle Beispiel1 zu löschen. Dies kann jedoch Auswirkungen auf andere Daten in der Untertabelle haben.

Eine andere Möglichkeit besteht darin, zuerst die Fremdschlüsseleinschränkung der untergeordneten Tabelle und dann die übergeordnete Tabelle zu löschen. Diese Methode hat keine Auswirkungen auf andere Daten in der Untertabelle und kann die Sicherheit der Datenbank gewährleisten.

Beispielsweise lautet der Fremdschlüsselalias von Beispiel4 „d_fk“. Löschen Sie die Fremdschlüsseleinschränkung von Beispiel4.

Tabelle ändern, Beispiel 4, Fremdschlüssel d_fk löschen;.

Sie können „show create table example4 \G“ ausführen, um zu überprüfen, ob es gelöscht wurde.

Führen Sie dann „Drop Table Example1;“ aus.

Wenn die Ausführung erfolgreich ist, war der Vorgang erfolgreich.

Das könnte Sie auch interessieren:
  • Optimierungsmethode für verschachtelte MySQL-Abfragen und gemeinsame Tabellenabfragen
  • Implementierung der dynamischen Konvertierung von MySQL-Zeilen und -Spalten (Kontingenztabelle, Kreuztabelle)
  • Syntaxeinführung zum Aktualisieren und Löschen gemeinsamer Tabellen in MySQL
  • Ein einfaches Beispiel für eine gemeinsame MySQL-Tabellenabfrage

<<:  Grundlegende Verwendung von Javascript-Array-Includes und -Reduces

>>:  Detaillierte Erläuterung des grafischen Tutorials zur VMware12-Installation und CentOS8-Konfiguration (Tutorial zur Installation virtueller VM-Maschinen auf CentOS8)

Artikel empfehlen

Hinweise zur Zeitverwaltung des Linux-Kernel-Gerätetreibers

/****************** * Zeitverwaltung des Linux-Ke...

MySQL NULL-Datenkonvertierungsmethode (unbedingt lesen)

Wenn Sie MySQL zum Abfragen der Datenbank verwend...

jQuery-Plugin zur Implementierung des Dashboards

Das jQuery-Plug-In implementiert das Dashboard zu...

Beispiel für die Ausführung eines MySQL-Befehlszeilenskripts

Dieser Artikel veranschaulicht anhand eines Beisp...

Kleines Problem mit dem Abstand zwischen Label und Eingabe im Google Browser

Erst Code, dann Text Code kopieren Der Code lautet...

Flex-Grow-, Flex-Shrink-, Flex-Basis- und Neun-Raster-Layout verstehen

1. Flex-Grow-, Flex-Shrink- und Flex-Basis-Eigens...

Natives JavaScript zum Erreichen von Skinning

Der spezifische Code zur Implementierung von Skin...

Grundlegendes Einführungstutorial zu MySQL-Partitionstabellen

Vorwort In einem aktuellen Projekt mussten wir ei...

Ubuntu installiert mehrere Versionen von CUDA und wechselt jederzeit

Ich werde nicht erklären, was CUDA ist, sondern d...

Vergleich mehrerer Beispiele zur Einfügungseffizienz in MySQL

Vorwort Aus beruflichen Gründen musste ich kürzli...

Eine audiovisuelle Linux-Distribution, die Audiophile anspricht

Ich bin kürzlich auf das Audiovisual Linux Projec...