Entwickler-Ecke

Datenbanken - Problem mit gelöschtem Datensatz / Schlüssel


The Machine - Di 21.01.03 15:05
Titel: Problem mit gelöschtem Datensatz / Schlüssel
Hallo!
Hab´ eine Paradox-DB-Anwendung erstellt, die aus 3 Tabellen besteht:
Kunden;
Artikel;
Geliehene Artikel.

Wird jetzt eine neue Leihe “eröffnet”, kann man darin den Kunden auswählen, und diesem “Artikel ausleihen”. Dabei wird ein Artikel aus der Artikel-Tab ausgewählt, und dieser dann in die Tabelle “Geliehene Artikel” geschrieben (m. Fremdschlüssel...). Diese Tabelle bleibt im Hintergrund; die zur Leihe GEHÖRENDEN Artikel werden anhand eines SQL-Selects (aus “Geliehene Artikel”) in einem DBGrid der “Leihe” angezeigt. “Aus” diesem Grid (also eigentl. aus der DB-Tabelle im Hintergrund...) kann man auch einzelne Artikel wieder löschen (die Datensätze werden dann im Hintergrund auch TATSÄCHLICH “live” entfernt...). Nun gibt es aber das Problem, daß, wenn man einen soeben aus d. Leihe genommenen Artikel NOCHMAL zum leihen auswählt (also der GLEICHE Artikel WIEDER in die Tab. “Geliehene Artikel” geschrieben werden soll...), erscheint die Meldung “Datensatz / Schlüssel gelöscht”...Aber eigentlich ensteht doch “einfach” ein neuer Datensatz (mit neuem, autom. generierten, Primärschlüssel)?!? Muß ich mich evtl. noch (manuell) um Ram-Speicher-Angelegenheiten kümmern? Denn nach erneutem Programmstart ist der “geliehene Artikel” (natürlich) wieder ein NEUER Datensatz...


The Machine - Mi 22.01.03 14:12

...Problem-Lösung in einem anderen Forum erfahren: Habe ja im Hintergrund aus d. echten DB-Tabelle per SQL gelöscht; so wurde aber das (Delphi-) Table-Element noch nicht aktualisiert (obwohl die ANZEIGE in DBGrids´, die durch Sources m. Tables verbunden waren schon aktualisiert war...). Also: Refresh d. Tables nicht vergessen, wenn man Tabellen m. SQL manipuliert hat!!!