Einzelnen Beitrag anzeigen

Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#13

Re: Records löschen

  Alt 6. Apr 2004, 20:38
Du benutzt einen Typ : FILE OF Record irgendwas Das ist ähnlich wie bei einer Textdatei. Mit dem seek gehst Du an eine definierte Stelle der Datei. Das hat den Vorteil, daß Du nicht jedes mal sequentiell vom Anfang bis zu der Suchstelle sequentiell durchwandern mußt. Der Nachteil davon ist aber : die Datei an sich kann nicht aktualisiert werden. Bzw.: gelöschte Datensätze bleiben schon noch da und werden nur gekennzeichnet.

Deshalb hat man im Record ein Feld, das z.B. für einen Datensatz auf -1 steht und diesen dadurch als gelöscht kennzeichnet, obwohl er noch da ist. Im Programm muß nun dieses Feld rausgefiltert werden. Also alle Datensätze <> -1 werden angezeigt.

Weg kriegst du ihn dadurch, einen Reorganisationslauf durchzuführen, indem Satz für Satz in eine neue Datei eingefügt werden, sofern sie das Löschfeld <> -1 besitzen. Diese wird dann umkopiert und die gelöschten Sachen sind dann auch weg. Bei sensiblen Daten reicht auch das aber nicht !
Gruß
Hansa
  Mit Zitat antworten Zitat