DBNavigator: Änderungen werden damit nicht gespichert
-
schönen guten tag,
ich versuche mich gerade ein bischen am builder. leider bin ich da noch nicht sehr weit. und habe jetzt mal eine kleine frage. vielleicht kann mir ja jemand helfen.
also ich habe mir eine kleine datenbankanwendung gebastelt. das funktioniert auch schonmal ganz gut. die daten aus meiner db werden eingelesen und ich kann sie auch in einem dbedit feld bearbeiten. jetzt kommt mein problem.zum speichern der daten und neu anlegen eines datensatzes habe ich einen DBNavigator mit eingebaut. wenn ich in einem dbedit feld daten ändere und zum einem nächsten datensatz springe werden die änderungen auch übernommen. wenn ich einen neuen datensatz einfüge wird er auch als zusätzlicher datensatz angezeigt.
wenn ich jetzt aber meine anwendung schließe und wieder neu öffne, sind alle meine änderungen wieder weg, die neuen datensätze sind auch verschwunden.woran kann das liegen?? muß ich da noch irgendwas einstellen?? z.b. beim navigator. muß ich da noch irgendwo sagen, das die daten auch gespeichert werden??
wäre super, wenn mir da jemand weiterhelfen könnte.
gruß
TheAnimal
-
dein navigator besitzt auch ein symbol wo ein hacken abgebildet ist
erst wenn du da draufdrückst, werden die daten wirklich übernommen
-
Jester2000 schrieb:
dein navigator besitzt auch ein symbol wo ein hacken abgebildet ist
erst wenn du da draufdrückst, werden die daten wirklich übernommenhi jester2000,
das hatte ich gemacht. habe meinen fehler jetzt aber gefunden. hatte beim table-objekt CachedUpdates auf true. das muß ich ja auf false stellen.
suppi, jetzt klappt es auch.
danke auch für deine hilfe.
gruß
TheAnimal
-
Hallo,
beim Beenden deines Programmes würde ich noch überprüfen ob ein
Datensatz im Edit bzw. Insert State ist.
Falls dies der Fall ist, würde ich den Datensatz automatisch oder per Benutzerabfrage speichern.if (ADOQuery1->State == dsEdit || ADOQuery1->State == dsInsert) ADOQuery1->Post();
mfg
VergissEs
-
VergissEs schrieb:
if (ADOQuery1->State == dsEdit || ADOQuery1->State == dsInsert) ADOQuery1->Post();
mfg
VergissEsHallo VergissEs,
was ist denn ADOQuery?? ich greife mit der BDE auf die DB zu. kann ich da auch die Query einsetzen?? wenn ja, hast du da ein beispiel wie ich die einsetze??
muß ich zum speichern und auslesen auch eine Query anlegen??sorry wegen der ganzen fragen. vielleicht hast ja lust und kannst mir welche davon beantworten.
gruß
TheAnimal
-
sorry wusste nicht das du die DB über BDE ansprichst
ADOQuery ist bei BCB 5 Ent. bzw. zum nachkauf von BCB 5 Prof.
also lass dich jetzt nicht verwirren.
mfg
VergissEs
-
kein problem. hatte es vorher auch mal über ADO probiert, da hat das leider nicht geklappt.
sgmal bei BDE gibt es ja auch ein Query-Objekt. muß ich das benutzen um daten aus meiner db auszulesen und wieder speichern zu können??gruß
TheAnimalEdit:
Zitate bitte auf das Notwendigste beschränken. Danke!