Announcement

Collapse
No announcement yet.

Daten in Datenbank trotz Rollback

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Daten in Datenbank trotz Rollback

    Ich habe folgendes Problem:
    Für mein Programm habe ich u.a. auch einen Assistenten programmiert, der nach einer Neuinstallation die wichtigsten Daten abfragt. Die Daten werden in einer Paradox-Tabelle gespeichert. Beim start des Assistenten rufe ich u.a. auch STARTTRANSACTION auf. Es gibt außerdem noch eine Abbrechen-Taste, die ein ROLLBACK auslöst. Wenn ich nun Werte in die Edit-Felder (DBEdit) eingebe und danach auf Abbrechen klicke, sind trotz des ROLLBACK die Werte in der Datenbank gespeichert. Wer kann mir sagen, was ich da falsche gemacht habe?
    Der Assistent wird als Popup-Fenster gestartet, d.h. die Anwendung ist im Hintergrund geöffnet. Dort befinden sich ebenfalls DBEdit's, die auf die gleichen Felder zugreifen. Sobald ich Werte im Assistenten eingebe, und das nächste feld den Fokus erhält, werden die Werte in den Editfelder der Anwendung auch angezeigt. Kann das die Ursache sein?

  • #2
    Hallo,

    die BDE muss bei einer Paradox-Datenbank jede Transaktion <b>simulieren</b>, da Paradox keine Transaktionen und kein Rollback kennt. Die BDE verwendet dazu temp. Hilfstabellen. Solange im Ablauf nichts unvorhergesehenes passiert und jeder Datensatz über einen Primärschlüssel eindeutig gefunden werden kann, funktioniert diese Simulation auch recht gut. Ich würde daher nachschauen, ob alle Komponenten die <b>gleiche</b> TSession/TDatabase-Instanz verwenden. Falls die <i>Default</i>-Session genutzt wird, sollte dies durch eine eigene TSession und TDatabase-Kombination ersetzt werden. Wenn es dann immer noch nicht funktioniert - wie sieht die Tabellenstruktur aus

    Comment

    Working...
    X