![]() |
Datenbank: BDE • Version: 7.0 • Zugriff über: DB
Markierter Datensatz
Hey Leute,
ich versuch mich garde mit Datenbanken. Mein Problem : Ich habe nun ein DBGRid und als Datasourse eine Tabble "aufträge" und nun möchte ich herrausfinden welcher Datensatz grade markiert ist und damit weiterarbeiten. Beipsiel : Ich markiere einen Datensatz und will ihn dann bearbeiten, woher weiß ich nun welchen Datensatz man gewählt hat und wie mache ich das, dass die Änderrungen auf geändert werden. Gruß Mathias |
AW: Markierter Datensatz
Eigentlich geht das automatisch. Pro Tabelle wird von der BDE ein Cursor auf den aktuellen Datensatz verwaltet.
Wenn Du dich in dem DBGrid bewegst, ändert sich der Cursor. Mögliche andere angebundene DB-Komponenten (z.B. DBGrid) passen dann ihren Wert an. Am besten, Du setzt neben das DBGrid mal ein DBEdit und einen DBNavigator und experimentierst mal damit. Programmseitig kannst Du Werte auch ändern: MyTable.Edit; MyTable.FieldByName('MyField').AsString := 'MyValue'; MyTable.Post; Diese Änderung bezieht sich dann immer auf den aktuellen Datensatz der Tabelle. |
AW: Markierter Datensatz
Aha. Wusste nicht das er das Automatisch macht. Aber nagut es scheint zu klappen. Danke
|
AW: Markierter Datensatz
Neues Problem: Wenn ich nun z.B Daten ändere ( z.B im Edit ) und dann auf "Abbrechen" klicke woher weiß der cursor nun ob ich den Datensatz speichern will oder nicht? Ich hab das gleiche Projekt schon mal in "FoxPro" gemacht, da gibt es ein "cursorbuffering" und bei speichern macht mal ein "tableupdate" und bei abbrechen "TABLEREVERT". Wie macht man sowas nun in Delphi?
|
AW: Markierter Datensatz
Du brauchst erst mal ein bisschen Grundlagenwissen:
![]() |
AW: Markierter Datensatz
Oke also mit
Delphi-Quellcode:
Speichert man...
table1.post;
Gut damit komme ich erst mal ein ganze Stück weiter... Ich melde mich wieder wenn ich nicht alleine weiter komme |
AW: Markierter Datensatz
Gespeichert wird auch automatisch, wenn Du den Datensatz verlässt bzw. wechselst.
Im DBGrid und im DBNavigator kannst Du das auch optisch sehen. Der Editmodus wird automatisch aktiviert, wenn Du im DBGrid oder DBEdit etwas editierst. Mit ESC kann man dann abbrechen. Programmseitig geht das mit Cancel. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:26 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