Allgemeine Fragen zur PROFAN Programmierung
Views (Heute): 249447 (10883)
  Suchen
 Zurück zur Übersicht
 AutorThema: "Schlüsselfeld" mit dbIndex
Ronald Baumann
Datum: 24.09.01 19:55 Antwortenals Email verschicken (ronba@bigfoot.de) 


Ich habe in einer Datei ein Schlüsselfeld (Artikelnummer); d.h. ein Eintrag in diesem Feld darf nicht doppelt vorkommen.

Folgende große Hilfe dazu habe ich von RGH erhalten:
++++++++++++++++++++++++++++++++++++++++++++++
If @dbFind(NeuerEintrag$,1)
<Fehlermeldung produzieren>
Else
<Datensatz hinzufügen>
EndIf

Da der Index genutzt wird, ist es
sehr schnell. Wichtig ist die 1 als
zweiter Parameter, da dann auf exakte
Übereinstimmung geprüft wird (siehe Hilfe).
++++++++++++++++++++++++++++++++++++++++++++++

Ein kleines Problemchen habe ich aber:
Wenn ich das "Schlüsselfeld" ändere oder einen neuen Datensatz hinzufüge, wird der Index mit geändert - automatisch.
Wenn ich allerdings den aktuellen Datensatz lösche mit

dbDelete()
dbPack()

dann ist das Schlüsselfeld des gelöschten Datensatzes noch immer im Index vorhanden. Nach dem Löschen eines Datensatzes muß ich die ganze Datei reindizieren:

dbCreateIndex "NR" > "iNR"
dbIndex("iNR")

Muß das so sein oder mache ich etwas falsch. Schön wäre es, wenn nach dbDelete() der Index schon aktualisiert werden würde.

Danke und beste Grüße


 Zurück zur Übersicht