Unbesetzte Nummern
Thomas Berger
ThB at gymel.com
Do Jul 4 13:15:52 CEST 2002
Lieber Herr Fischer,
> ich meine mit "Datenbank" immer Datenbankdatei (bei uns *.gld), also die
> Datei, in der die tatsächlichen Daten stehen. Und wenn diese leer ist,
> auf was verwiest dann der Index?
Wenn Sie alle Datensaetze geloescht haben und danach entlueftet,
dann weiss ich wirklich nicht, was passiert: Die .cLD-Datei
existiert und hat 0 Bytes, die Satztabelle existiert und ist
gross, und der Index ist irgendwie nicht definiert...
[Der Index verweist immer auf Satznummern, nie auf .cLD-Dateien,
daher koennen sie z.B. .cLD-Dateien zerstoeren und trotzdem
recherchieren, erst beim Aufblaettern der Datensaetze merken
Sie, dass etwas faul ist]
> > > Ich bin nur erstaunt über die Satznummern jenseits der 1000er, die
> > > höchste Nummer ist bei mir unter 600, und da sehe ich das von Ihnen
> > > beschriebene Problem nicht. Wo stehen diese Nummern denn?
> >
> > Wenn die Datenbank n Saetze hat, ist die .TBL-Datei n*4+2 Bytes gross.
> > Umgekehrt: Wenn die .tbl so und so gross ist, gibt/gab es halt
> > entsprechend viele Saetze.
> >
> Heißt das, dass das Erneuern der Satztabelle dieses Problem auch lösen
> würde?
> (Diese Zahlen passen zu meinen Daten und der Anzeige, erklären aber
> nicht, warum Allegro dann nicht einfach die Satztabelle entsprechend
> verkleinert, also die überflüssigen Zeichen am Ende entfernt.)
Vielleicht tut es das bei "Satztabelle erneuern", unbenutzte
Satznummern gibt es aber normalerweise nicht nur am Ende, sondern
auch mittendrin (am Ende sind aber typischerweise immer welche:
Stellen Sie sich eine globale Ersetzung ueber die gesamte Datenbank
von n Datensaetzen vor, die jeden Satz verlaengert, dann (etwa mit -N0)
kann es sein, dass danach 2n Satznummern verbraten sind, dabei sind
exakt die von n+1 bis 2n Leersaetzen zugeordnet, werden also
beim Entlueften zu "ungenutzt".
viele Gruesse
Thomas Berger
Mehr Informationen über die Mailingliste Allegro