Daten-Cluster in Cluster-Datenbanken löschen 

Um Daten-Cluster aus Datenbanken zu löschen, verwenden Sie die folgende Anweisung:

Syntax

DELETE FROM DATABASE <dbtab>(<ar>) [CLIENT <cli>] ID <key>.

Diese Anweisung löscht das gesamte Daten-Cluster des Bereichs <ar> und der Bezeichnung <key> der Datenbanktabelle <dbtab>. Sie müssen <dbtab> mit der TABLES-Anweisung deklarieren.

Mit der Option CLIENT <cli> können Sie bei mandantenabhängigen Cluster-Datenbanken die automatische Mandatenbehandlung abschalten und den Mandanten selbst angeben. Diese Option muß direkt hinter dem Namen der Datenbank stehen.

Die Speicherung eines Daten-Clusters in einer Datenbank erfolgte normalerweise durch eine EXPORT TO DATABASE- Anweisung (siehe Datenobjekte in Cluster-Datenbanken speichern). Informationen zur Struktur der Datenbanktabelle <dbtab> finden Sie unter Struktur von Cluster-Datenbanken.

Diese DELETE-Anweisung löscht alle Zeilen der Cluster-Datenbank, über die sich das angesprochene Daten-Cluster erstreckt.

Kann ein Daten-Cluster mit dem angegeben Schlüssel gelöscht werden, wird SY-SUBRC auf 0 gesetzt, ansonsten auf 4.

REPORT demo_data_ext_cluster_delete.

DATA dirtab TYPE TABLE OF cdir.

IMPORT DIRECTORY INTO dirtab FROM DATABASE
                                  indx(hk) ID 'Table'.
WRITE: / 'SY-SUBRC, IMPORT:', sy-subrc.

DELETE FROM DATABASE indx(hk) ID 'Table'.
WRITE: / 'SY-SUBRC, DELETE:', sy-subrc.

IMPORT DIRECTORY INTO dirtab FROM DATABASE
                                  indx(hk) ID 'Table'.
WRITE: / 'SY-SUBRC, IMPORT:', sy-subrc.

Dieses Programm löscht das mit dem Beispielprogramm unter Datenobjekte in Cluster-Datenbanken speichern abgespeicherte Daten-Cluster. Falls das Daten-Cluster bei Programmstart vorhanden ist, sieht die Ausgabe so aus:

SY-SUBRC, IMPORT: 0

SY-SUBRC, DELETE: 0

SY-SUBRC, IMPORT: 4

Bei der ersten IMPORT-Anweisung ist der Daten-Cluster noch vorhanden. Die DELETE-Anweisung wird erfolgreich abgeschlossen. Bei der zweiten IMPORT-Anweisung ist der Daten-Cluster nicht mehr vorhanden.