Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

fdelrec - Satz in ISAM-Datei löschen (BS2000)

&pagelevel(4)&pagelevel

Definition

#include <stdio.h>

int fdelrec(FILE *stream, void *key);

Beschreibung

fdelrec() löscht aus einer ISAM-Datei mit Satz-Ein-/Ausgabe den Satz mit dem Schlüsselwert key.

FILE *stream ist der Dateizeiger einer ISAM-Datei, die im Modus type=record, forg=key geöffnet wurde (siehe auch fopen(), freopen()).

void *key ist der Zeiger auf einen Bereich, der den Schlüsselwert des zu löschenden Satzes in vollständiger Länge oder null enthält. Ist key gleich null, wird der zuletzt gelesene Satz gelöscht. Der Satz muss unmittelbar vor dem fdelrec-Aufruf gelesen werden.

Returnwert

0

bei Erfolg. Der Satz mit dem angegebenen Schlüssel wurde gelöscht.

 

> 0

der zu löschende Satz existiert nicht.

 

EOF

bei Fehler.

Hinweise

Wenn der Aufruf fehlerfrei war (Returnwerte 0 bzw. > 0), wird das EOF-Flag der Datei zurückgesetzt.

Ist der angegebene Schlüsselwert nicht in der Datei vorhanden (Returnwert > 0), bleibt die aktuelle Position des Lese-/Schreibzeigers unverändert. Einzige Ausnahme: Wenn die Datei zum Zeitpunkt des fdelrec-Aufrufs auf den zweiten oder höheren Schlüssel einer Gruppe von Sätzen mit gleichen Schlüsseln positioniert ist, positioniert fdelrec() die Datei auf den ersten Satz nach dieser Gruppe.

In ISAM-Dateien mit Schlüsselverdoppelung löscht fdelrec() den ersten Satz mit dem angegebenen Schlüssel. Anschließend ist die Datei auf den nächsten Satz (mit gleichem bzw. nächsthöherem) Schlüssel positioniert.

Siehe auch

flocate(), fopen(), freopen(), stdio.h.