Hallo Helmut,

> Wenn ich einen Datensatz gelöscht habe, verhält sich der Primärschlüssel
>   in der Datenbank-Tabellenansicht anders als der Datensatzzähler in dem
> Formularfeld 'Navigationsleiste':
>
> In der Tabellenansicht bleibt der gelöschte Datensatz vergeben, d.h. die
> Nummer des gelöschten Datensatzes wird übersprungen = gibt es nicht mehr.
>
> In der Navigationsleiste dagegen wird die Datensatznummer anscheinend
> fortlaufend gezählt, egal, was inzwischen gelöscht wurde.

Das ist korrekt und mit einfachen Mitteln nicht anders handhabbar. Die 
Datensatznummer ist keine feststehende Größe. Sie bezieht sich auf die 
Gesamtzahl der vorhandenen Datensätze.
Der Primärschlüssel wird hingegen hochgezählt. Wenn also eine Nummer erst 
einmal vergeben wurde wird bei der nächsten Eingabe nur nach der höchsten 
Nummer gesucht und eine Nummer höher als Primärschlüssel genommen. Nach der 
Primärschlüsselnummer kannst Du einen bestimmten Datensatz finden. Nach der 
Datensatznummer, die je nach Sortierung übrigens mit ganz unterschiedlichen 
Datensätzen verknüpft wird, kannst Du nichts finden. Sie gibt nur an, wie 
viele Datensätze dem vorgegebenen Muster entsprechen. Beim Suchen nach Daten 
wird so beispielsweise angegeben, wie viele Treffer eine Abfrage hat. Der 
erste Treffer hat dann eben die Nummer 1.

Der Primärschlüssel wird nur zur internen Verwaltung gebraucht. Wenn Du das 
Ganze anders haben willst musst Du eine Funktion bauen, die die freien 
Stellen sucht, die durch das Löschen anderer Datensätze entstehen. Dann 
müssen beim Löschen alle Primärschlüssel neu geschrieben werden - auch in 
verknüpften Formularen. Bei Datenbanken mit wenigen Datensätzen mag so etwas 
praktikabel sein. Datenbanken von einem größeren Ausmaß wären damit aber 
unbedienbar langsam.

Gruß

Robert

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org
For additional commands, e-mail: users-h...@de.openoffice.org

Reply via email to