DELETE [RECORD] [IN] [STATEMENT] [(r)]
|
Dieser Abschnitt behandelt folgende Themen:
Eine Erläuterung der in dem Syntax-Diagramm verwendeten Symbole entnehmen Sie dem Abschnitt Syntax-Symbole.
Verwandte Statements: ACCEPT/REJECT |
AT BREAK | AT START OF DATA | AT END OF DATA | BACKOUT TRANSACTION | BEFORE
BREAK PROCESSING | END
TRANSACTION | FIND |
GET | GET SAME | GET TRANSACTION
DATA | HISTOGRAM
| LIMIT | PASSW | PERFORM BREAK
PROCESSING | READ |
RETRY | STORE | UPDATE
Gehört zur Funktionsgruppe: Datenbankzugriffe und Datenbankänderungen
Das Statement DELETE dient dazu, einen Datensatz von der Datenbank zu
löschen.
Das Vorhandensein eines DELETE-Statements bewirkt, dass alle Datensätze,
die mit dem betreffenden READ- oder
FIND-Statement gelesen werden, in
den Hold-Status gestellt werden.
Die Hold-Logik ist im Kapitel Datenbankzugriffe im Leitfaden zur Programmierung beschrieben.
Das DELETE-Statement darf nicht mit einem FIND-, READ- oder GET-Statement in derselben Quellcode-Zeile stehen.
Syntax-Element-Beschreibung
| Syntax-Element | Beschreibung |
|---|---|
(r) |
Statement-Referenz:
Die Notation
Wenn keine Statement-Referenz angegeben wird, referenziert das
|
| VSAM-Datenbanken | Das DELETE-Statement ist nicht auf VSAM-ESDS (Entry-Sequenced
Data Sets) anwendbar.
|
|---|---|
| SQL-Datenbanken |
Mit dem Bei den meisten SQL-Datenbanken kann eine mit |
In diesem Beispiel werden alle Datensätze mit Namen ALDEN gelöscht.
** Example 'DELEX1': DELETE
**
**
CAUTION: Executing this example will modify the database records!
************************************************************************
DEFINE DATA LOCAL
1 EMPLOY-VIEW VIEW OF EMPLOYEES
2 NAME
END-DEFINE
*
FIND EMPLOY-VIEW WITH NAME = 'ALDEN'
/*
DELETE
END TRANSACTION
/*
AT END OF DATA
WRITE NOTITLE *NUMBER 'RECORDS DELETED'
END-ENDDATA
END-FIND
END
Falls in der VEHICLES-Datei für die Person mit Namen ALDEN
keine Datensätze gefunden werden, wird von der EMPLOYEES-Datei der
Datensatz von ALDEN gelöscht.
** Example 'DELEX2': DELETE
**
**
CAUTION: Executing this example will modify the database records!
************************************************************************
DEFINE DATA LOCAL
1 EMPLOY-VIEW VIEW OF EMPLOYEES
2 PERSONNEL-ID
2 NAME
1 VEHIC-VIEW VIEW OF VEHICLES
2 PERSONNEL-ID
END-DEFINE
*
EMPL. FIND EMPLOY-VIEW WITH NAME = 'ALDEN'
/*
VEHC. FIND VEHIC-VIEW WITH PERSONNEL-ID = PERSONNEL-ID (EMPL.)
IF NO RECORDS FOUND
/*
DELETE (EMPL.)
/*
END TRANSACTION
END-NOREC
END-FIND
/*
END-FIND
END