Das Ziel dieses Tutorials ist es, Sie durch die Verwendung des Löschens aus Klausel in Oracle -Datenbanken zu führen.
Oracle aus Anweisung löschen
Durch die Löschdelet -aus -Klausel können wir eine oder mehrere Zeilen aus einer Datenbanktabelle in einem einzigen Befehl löschen.
Die Anweisungssyntax ist wie im Folgenden dargestellt:
Löschen aus table_name
Wo Zustand;
In der bereitgestellten Syntax rufen wir zunächst das Löschen aus dem Schlüsselwort an, gefolgt vom Tabellennamen, dessen Daten wir löschen möchten.
Als nächstes verwenden wir die WHERE -Klausel, um die Bedingung anzugeben, um die Daten aus der Tabelle zu entfernen. Wenn Sie die WHERE -Klausel und den Zustand weglassen, werden alle Daten aus der Tabelle entfernt.
Oracle aus dem Beispiel löschen
Erstellen wir eine grundlegende Tabelle, die die Demo -Daten für Demonstrationszwecke enthält.
Erstellen Sie Tabellendatenbanken
(
ID -Nummer, die standardmäßig auf Null als Identität generiert wird,
Nennen Sie varchar2 (50) nicht null,
default_port nummer,
neuest_version varchar2 (20) nicht null,
Typ varchar2 (20) nicht null,
Sprache varchar2 (20) nicht null
);
Sobald die Tabelle initialisiert ist, können wir einige Beispieldaten hinzufügen, wie in den folgenden Einfügungsanweisungen gezeigt:
In Datenbanken einfügen (Name, default_port, neuest_version, Typ, Sprache)
Werte ('Oracle', 1521, '19c', 'Relational', 'SQL');
In Datenbanken einfügen (Name, default_port, neuest_version, Typ, Sprache)
Werte ('MySQL', 3306, '8.0 ',' relational ',' sql ');
In Datenbanken einfügen (Name, default_port, neuest_version, Typ, Sprache)
Values ('postgresql', 5432, '13', 'relational', 'sql');
In Datenbanken einfügen (Name, default_port, neuest_version, Typ, Sprache)
Werte ('MongoDB', 27017, '4.4 ',' nicht-relational ',' JavaScript ');
In Datenbanken einfügen (Name, default_port, neuest_version, Typ, Sprache)
Werte ('Microsoft SQL Server', 1433, '2017', 'Relational', 'T-SQL');
In Datenbanken einfügen (Name, default_port, neuest_version, Typ, Sprache)
Werte ('Apache Cassandra', 9042, 4.0 ',' nicht-relational ',' Java ');
In Datenbanken einfügen (Name, default_port, neuest_version, Typ, Sprache)
Werte ('Redis', 6379, '6.0 ',' nicht-relational ',' c ++ ');
In Datenbanken einfügen (Name, default_port, neuest_version, Typ, Sprache)
Werte ('Mariadb', 3306, '10.5 ',' relational ',' SQL ');
In Datenbanken einfügen (Name, default_port, neuest_version, Typ, Sprache)
Werte ('sqlite', null, '3.34 ',' relational ',' c ');
In Datenbanken einfügen (Name, default_port, neuest_version, Typ, Sprache)
Werte ('Neo4j', 7474, '4.1 ',' nicht-relational ',' Java ');
Dies sollte uns eine Tabelle mit den Daten geben, wie im Folgenden gezeigt:
Beispiel 1: Löschen Sie bestimmte Zeilen aus der Tabelle
Angenommen, wir möchten alle Beziehungsdatenbanken aus der Tabelle entfernen. Wir können eine Löschung aus der Anweisung mit einer WHERE -Klausel verwenden und die Bedingung als den Typ festlegen, der „relational“ entspricht.
Beispiel:
Aus Datenbanken löschen
wo Typ = 'relational';
Dies sollte alle relationalen Datenbanken aus der Tabelle entfernen, wie in der folgenden neuen Tabelle gezeigt:
Wie wir sehen können, enthält die Tabelle vier Datensätze anstelle von 10.
Beispiel 2: Kaskade löschen
In den meisten Fällen müssen Sie die Daten häufig aus einer Tabelle mit Fremdschlüssel entfernen. Nehmen Sie zum Beispiel die folgenden Tabellen:
TABLE SIZE_STATS CREATE (
Datenbanknummer Primärschlüssel,
size_on_disk -Nummer nicht null,
Größe_Comprimed Nummer
);
Tabelle 2:
Erstellen Sie Tabellendatenbanken
(
ID -Nummer, die standardmäßig auf Null als Identität generiert wird,
Nennen Sie varchar2 (50) nicht null,
default_port nummer,
neuest_version varchar2 (20) nicht null,
Typ varchar2 (20) nicht null,
Sprache varchar2 (20) nicht null,
Fremdschlüssel (ID) Referenz
);
In diesem Fall enthält die Datenbankentabelle einen Fremdschlüssel, der den Primärschlüssel der Tabelle Size_Stats verweist. In der Löschkaskade werden der Datenbankmotor alle Kinderelemente entfernen, wenn das übergeordnete Element aus der Tabelle entfernt wird.
Beispiel:
Aus Datenbanken löschen
wobei id = 3;
Die vorherige Abfrage entfernt die Zeile, wobei ID = 3 aus der Tabelle Datenbanken.
Wenn wir die Tabelle Size_Stats überprüfen, sehen wir, dass die Zeile mit Database_id = 3 ebenfalls fallen gelassen wurde.
Beispiel 3: Entfernen Sie alle Zeilen
Verwenden Sie, um alle Zeilen aus einer Tabelle zu entfernen, die Löschung aus der Klausel ohne einen Woodus, wie im Folgenden dargestellt:
Löschen aus table_name;
Abschluss
Sie haben gelernt, wie man eine oder mehrere Zeilen aus einer Datenbanktabelle löscht, indem Sie in diesem Beitrag die Löschung aus der Klausel löschen.