Die EGL-Anweisung 'delete' stellt die grundlegende Löschfunktionalität für die Sprache bereit. Sie entfernt einen Datensatz aus einer Datei, eine Zeile aus einer relationalen Datenbank oder ein Segment aus einer hierarchischen Datenbank.
In dem meisten Fällen müssen Sie eine temporäre Sperre für einen Datensatz setzen, bevor Sie ihn löschen können. Um eine temporäre Sperre für einen Datensatz zu setzen, verwenden Sie die Anweisung 'get' mit der Option 'forUpdate'.
Das genaue Verhalten der Anweisung hängt von der Art und Weise ab, wie Sie Ihre Datensatzvariable stereotypisiert haben (siehe Stereotype).

Im folgenden Beispiel hat der Benutzer eine Anforderung zum Löschen eines angezeigten Datensatzes übergeben. Das Programm muss die Datensatzvariable, die die angegebenen Informationen enthält, abrufen (get) und mit 'forUpdate' temporär blockieren, bevor der Datensatz gelöscht wird:
if (userRequest == "D")
try
get myCustomer forUpdate;
onException(ex AnyException)
myErrorHandler(ex); // beendet das Programm
end
try
delete myCustomer;
onException(ex AnyException)
myErrorHandler(ex);
end
end