Oracle
 sql >> Datenbank >  >> RDS >> Oracle

So löschen Sie eine Zeile in Oracle

Dieses SQL-Tutorial enthält Erklärungen und Beispiele für das Löschen aus der Tabelle in Oracle

Aus Tabelle löschen wird in Oracle SQL verwendet, um die Zeilen in der Tabelle zu löschen. Es ist eine DML-Anweisung (Data Manipulation Language). Es wird verwendet, um die Teilmenge der vorhandenen Zeilen oder alle vorhandenen Zeilen aus der Tabelle zu löschen.

Hier ist die Löschsyntax in Oracle

Hier ist die Tabelle  der Tabellenname und die Bedingung, die die zu löschenden Zeilen angibt   und diese besteht aus Spalten, Unterabfragen und Ausdrücken

Wichtige Punkte.

  • Delete-Anweisung erfordert eine Sperre für die Tabelle
  • Wir müssen uns verpflichten, das Datum dauerhaft zu ändern (commit;)
  • Wir können den rollback-Befehl verwenden, um die Änderungen der Löschanweisung rückgängig zu machen ( rollback;)
  • Wenn Trigger zum Löschen definiert sind, wird er für jede gelöschte Zeile ausgelöst
  • Wenn Sie herausfinden möchten, wie viele Zeilen aus der delete-Anweisung gelöscht werden, können Sie zuerst die select-Anweisung mit derselben where-Klausel auslösen, um die Anzahl der Zeilen herauszufinden

Sehen wir uns einige Möglichkeiten an, die DELETE-Anweisung zu verwenden

bestimmte Zeilen aus der Tabelle löschen oder Wie lösche ich einen Datensatz aus Oracle

Angenommen, wir möchten die Zeilen löschen, in denen der Spaltenname name=’JOHN’

ist
delete from emp where name='JOHN';
commit;

or 
delete from emp where name='JOHN';
rollback;

oder

Angenommen, wir möchten eine Abteilung aus der Abteilungstabelle löschen

delete from dept where dept_no= 10;
commit;

Diese Anweisungen löschen alle Zeilen, die diesen bestimmten Spaltenwert enthalten. Nachdem die Löschanweisung abgeschlossen ist, wird angezeigt, wie viele Zeilen gelöscht wurden. wir müssen uns verpflichten, die Änderungen dauerhaft vorzunehmen.

Wenn keine Zeilen gelöscht werden, werden 0 Zeilen gelöscht angezeigt.

ALLE Zeilen aus der Tabelle in Oracle löschen oder Wie lösche ich alle Datensätze aus der Tabelle

Angenommen, wir wollen alle Zeilen aus der Beispieltabelle löschen, dann wäre die Anweisung

Delete from example;

delete from employee;

delete from fnd_users;
commit;

Es löscht alle Zeilen aus der Oracle-Tabelle und gibt aus, wie viele Zeilen gelöscht wurden, was tatsächlich der Anzahl der Tabelle entspricht.

Dadurch wird die High Watermark der Tabelle nicht zurückgesetzt. und es verwendet Undo. Möglicherweise möchten Sie die Truncate-Tabelle im Oracle-Befehl verwenden, der den HWM (High Watermark) zurücksetzt und viel weniger rückgängig macht als die Löschanweisung

LÖSCHEN  Sie Zeilen aus der Tabelle basierend auf der Unterabfrage in Oracle

Die Delete-Anweisung kann mit einer Unterabfrage verwendet werden, um die Zeilen zu löschen

Angenommen, wir möchten die Zeilen in Emp basierend auf dem Abteilungsnamen in der Abteilungstabelle löschen, dann würde die Löschanweisung wie folgt aussehen

delete from emp where dept_id = (select dept_id from dept where dept_name='SALES');
commit;

Die obige Anweisung würde zuerst nach dept_id aus der dept-Tabelle suchen, wobei dept_name der Umsatz ist. und dann speist es die dept_id in die delete-Anweisung für die emp-Tabelle

DELETE  Zeilen aus der Tabelle mit der EXISTS/NOT EXISTS-Klausel

Dies ist eine andere Form des Löschens nur mit Unterabfragen. Dies wird verwendet, wenn Sie zwei Tabellen vergleichen möchten, um die Daten zu löschen

Angenommen, Sie möchten Datensätze aus der Tabelle „dept“ löschen, in denen kein Mitarbeiter vorhanden ist

delete from
FROM dept d
WHERE NOT EXISTS
(SELECT * FROM emp e
WHERE d.dept_id
= e.dept_id);
commit;

Ich hoffe, Ihnen gefällt dieser Inhalt zum Löschen einer Zeile in Oracle

Verwandte Artikel
Alter Table in Oracle :Alter Table in Oracle wird verwendet, um eine Spalte zu ändern, Einschränkungen zu löschen und hinzuzufügen, den Datentyp der Tabellenspalte zu ändern, die Tabellenspeicherparameter zu ändern
Erstellen einer globalen temporären Tabelle in Oracle
Update-Anweisung in Oracle:Wir verwenden die Update-Anweisung in Oracle, um die vorhandenen Zeilen in der Oracle-Tabelle in der Oracle-Datenbank zu ändern. Eine Aktualisierung kann auf mehrere Arten ausgeführt werden
DROP TABLE ORACLE:Informationen zum Löschen von Tabellen in Oracle, Löschen von Tabellen, falls in Oracle vorhanden, Löschen mehrerer Tabellen in einem Befehl, Löschen von Tabellenkaskadeneinschränkungen
Oracle Erstellen von Tabellen:Tabellen sind die Grundeinheit der Datenspeicherung in einer Oracle-Datenbank. Wir behandeln die Verwendung des Oracle-Befehls create table zum Erstellen einer Tabelle mit einem Fremdschlüssel /Primärschlüssel mit ausführlichem Beispiel und Erklärung