Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datensatz löschen (https://www.delphipraxis.net/45511-datensatz-loeschen.html)

davar 7. Mai 2005 15:18

Datenbank: Paradox • Version: 7 • Zugriff über: BDE

Datensatz löschen
 
Hallo Leute,

habe folgenden merkwürdigen Fehler:
Delphi-Quellcode:
     if DBs.TTeilprojekte.Fieldbyname('Teilprojekt').AsString = LBTeilprojekte.items[LBTeilprojekte.itemindex]) then
         DBs.TTeilprojekte.Delete;
Was gemeint ist, ist wohl klar. Das, was in der Listbox markiert ist, soll gelöscht werden. Das klappt eigentlich auch ganz gut. Aber wenn das Wort, das gelöscht wird, mit "L" (gross oder klein) anfängt, wird der Datensatz nicht entfernt.. Kann sich das jemand vorstellen und sagen, woran das liegen könnte? Ich find da irgendwie keinen Zusammenhang..

MfG

davar

marabu 7. Mai 2005 18:30

Re: Datensatz löschen
 
Hallo davar,

wirklich merkwürdiger Fehler, aber ich mag nicht glauben, dass er mit dem Buchstaben L zusammenhängt. Ich vermute, das der gleiche Datensatz sich auch dann nicht löschen lässt, wenn du in der Tabelle ein Z vor den Namen des fraglichen Teilprojekts setzt.

Mehr kann ich ohne weitere Informationen eigentlich nicht dazu sagen. Aber ein paar Gedanken gehen mir schon noch durch den Kopf, wenn ich dein Code-Fragment betrachte. Vielleicht könnte dir die Komponente TDBListbox helfen? Andernfalls würde ich etwas ähnliches wie das hier erwarten:

Delphi-Quellcode:
var
  s: string;
begin
  with LBTeilprojekte do
    s := items[itemindex];
  with DBs.TTeilprojekte do
    if Locate('Teilprojekt', s, []) then
      Delete;
end;
Wenn TEILPROJEKT ein Schlüsselfeld ist, dann kannst du auch FindKey() verwenden. Aber auch mein Code-Beispiel dürfte dir nicht bei deinem Fehler helfen. Vielleicht hast du ja in den RI-Rules (ich glaube mich zu erinnern, dass bei Paradox 7 Einstellungen wie CASCADE, DENY möglich waren) etwas angegeben, was dir das löschen unmöglich macht. Kommen denn gar keine Fehlermeldungen?

Grüße vom marabu

Code-Fehler korrigiert

davar 8. Mai 2005 10:23

Re: Datensatz löschen
 
Hi marabu,

ich spiele schon mit dem Gedanken, ob ich diesen Fehler in die Top-10 der mysteriösen Fehler schicken soll :-)

also wenn ich einen anderen Buchstaben davorsetze (beim gleichen datensatz genauso wie bei den anderen), kommt es darauf an, um welchen Buchstaben es sich handelt. wenn der buchstabe mit a-k anfängt, kann man den datensatz löschen, l-z nicht..


MfG

davar


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:29 Uhr.

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