Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Frage zu Paradox (https://www.delphipraxis.net/7885-frage-zu-paradox.html)

coolstranger 23. Aug 2003 19:19


Frage zu Paradox
 
Ich habe eine Spalte in meiner Paradox-Datenbank, welche auf die Option +/-(autoincrement) gesetzt ist. Über mein Programm lasse ich per Eingabemaske neue Daten hinzufügen. Diese Spalte, sie heißt bei mir Nummer, zählt also immer schön abwärts. Wenn ich jetzt aber einen Datensatz lösche, z. B. Nr. 195 und danach einen anderen, neuen Datensatz einfüge zählt sie 196, 197 usw. Kann man das ausschalten und es so machen, dass sie dann bei dem letzten verfügbaren datensatz weiterzählt?

woki 23. Aug 2003 19:39

Re: Frage zu Paradox
 
Hallo

Ganz klar: nein.

Autoincrementfelder dienen nicht dem durchnumerieren von Datensaätzen, sondern dem Aufbau von Referenzen innerhalb der Datenbank. Deshalb darf, während der gesamten Lebensdauer der Tabelle kein Wert jemals zweimal vergeben werden. dies würde die referentielle Integrität der Datenbank zerstören.
Wenn Du deine Datensätze fortlaufend durchnumerieren willst, mußt du dir einen anderen Mechanismums überlegen.

Grüße
Woki

coolstranger 23. Aug 2003 21:09

Re: Frage zu Paradox
 
Und kannst du oder irgendjemand anders mir einen Tip geben, wie ich es anders machen kann?

r_kerber 24. Aug 2003 10:14

Re: Frage zu Paradox
 
Hallo Coolstranger,

ich hatte doch schon einen Vorschlag gemacht: http://www.delphipraxis.net/internal...728&highlight=
Im Prinzip fumktioniert das so. Probleme hatte ich nur, beim Einfügen neuer Datensätze.

woki 24. Aug 2003 10:16

Re: Frage zu Paradox
 
Hallo,

dazu müßte man wissen, was du genau willst, wie soll mit den Löchern, die durch das Löschen von Datensätzen entstehen, umgegangen werden.
Was die Sache etwas verkompliziert ist die Tatsache, daß der eine Client ja nie weiß, was die anderen gerade tun, und serverseitige Logik gibt es janicht bei Paradox.

Einen so einfachen Mechanismus wie das Setzen eines Autoincrement gibt es hier allerdings nicht. Da mußt Du schon selbst etwas implementieren

Grüße
Woki


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz