Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Feld wird nicht aktualisiert. Warum? (https://www.delphipraxis.net/11996-feld-wird-nicht-aktualisiert-warum.html)

FBrust 18. Nov 2003 15:28


Feld wird nicht aktualisiert. Warum?
 
Hallo,

in meinem Programm steht folgender Code:

Delphi-Quellcode:
    with dmInput.tblIP_Current do begin
      Close;
      Open;
      while not Eof do begin
        Edit;
        FieldbyName('intDone').AsInteger := -1;
        Post;
        Next;
      end;
      Close;
    end;
In dem Feld "intDone" steht zu Beginn in jedem Datensatz eine 0, sie soll durch die obige Schleife durch eine -1 ersetzt werden. Die Tabelle ist vorhanden (Paradox), hat 473 Datensätze und die Schleife wird auch 473-mal durchlaufen (habe Zähler eingebaut).

Allerdings steht nach dem Durchlauf immer noch 0 in jedem Datensatz! Warum? Ich komm einfach nicht drauf :wall: , vielleicht hat ja jemand von euch einen Tip...

Grüße

Frank

markon 18. Nov 2003 15:31

Re: Feld wird nicht aktualisiert. Warum?
 
probier mal n refresh

wird der wert nur in der db nicht verändert?

PeterRettig 18. Nov 2003 15:46

Re: Feld wird nicht aktualisiert. Warum?
 
Hallo,

einmal abgesehen von deinem Problem wäre hier die
Benutzung eines Querys stark anzuraten!

UPDATE TABELLENNAME SET intDone = -1

Ciao Peter

FBrust 18. Nov 2003 15:47

Re: Feld wird nicht aktualisiert. Warum?
 
Hallo markon,
danke für Deine Antwort.

Der Refresh hat nichts gebracht.

Zitat:

wird der wert nur in der db nicht verändert?
Wo sollte der Wert denn sonst noch verändert werden können?

Gruß

Frank

markon 18. Nov 2003 15:50

Re: Feld wird nicht aktualisiert. Warum?
 
hmm, sorry.
dachte da ist ne table im einsatz in der du gleich zur laufzeit die tabelle anzeigst.. :wink:

eddy 18. Nov 2003 17:48

Re: Feld wird nicht aktualisiert. Warum?
 
Hallo FBrust,

interessantes Problem. In Deinem Quellcode ist kein Fehler zu sehen.

Hast Du mal einen Haltepunkt (F5) gesetzt und geprüft, ob
Code:
FieldbyName('intDone').AsInteger := -1;
im Einzelschrittmodus (F8 oder F7) den zugewiesenen Wert enthält.

Ist Dein Feld intDone vom Typ Integer oder Short?

Ich habe so eine ähnliche Routine, um einem Feld einer Datenbank ein Wert zuweisen zu können. Fast identischer Programmcode und hat funktioniert.

mfg
eddy


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:50 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