Vor dieser Fehlermeldung habe ich nicht mals was von "Savepoints" gewußt,
ich arbeite nicht mit Transaktionen, das grobe Prinzip einer Transaktion
verstehe ich ja aber ich hatte das nicht für nötig gehalten das zu benutzen.
Also das hinzufügen von Datensätzen erfolgt vom Prinzip her so...
Delphi-Quellcode:
SQLQuery := TZQuery.Create(self);
SQLQuery.SQL.Text := 'INSERT INTO TAB (Kunde, Name) VALUES (:Kunde, :Name)';
SQLQuery.ParamByName('Kunde').asString := sKunde;
SQLQuery.ParamByName('Name').asString := sName;
SQLQuery.ExecSQL;
Das erledigt eine art "Update Thread" für mich im Hintergrund des Programms
im Vordergrund kann der Anwender in den Daten suchen dazu wird eine 'SELECT'
Abfrage erstellt und an die Datenbank geschickt, jedoch kommt dabei dann
die besagte Fehlermeldung.
Meine Vermutung ist das FireBird das nicht haben kann das man Datensätze hinzufügt
und gleichzeitig eine Select-Abfrage startet.
Da beim Programmstart die Datenbank ebenfalls befüllt wird, wenn diese leer ist
lasse ich meine Anwendung zu Testzwecken laufen und bisher ohne Probleme er hat
sicherlich schon so knapp 10.000 Datensätze hinzugefügt. Also an der Menge scheint
es nicht zu liegen, das war meine erste Vermutung das ich nicht ohne ende hinzufügen
kann ohne zwischen durch die
DB zu "speichern".