Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi TBatchmove.Execute abbrechen (https://www.delphipraxis.net/10453-tbatchmove-execute-abbrechen.html)

Jacki O 18. Okt 2003 23:47


TBatchmove.Execute abbrechen
 
Hallo,

ich führe in einem Thread eine TBatchMove.Execute aus, um Datansätze zwischen 2 Datenbanken auszutauschen.
Gibt es eine Möglichkeit dieses batchmove vorzeitig (vor dessen eigener Beendigung) zu beenden ?

Gruß Jacki

MrSpock 19. Okt 2003 20:32

Re: TBatchmove.Execute abbrechen
 
Hallo Jackie O,
nein, dass geht wohl nicht. Ich weiss jedoch nicht, was passiert, wenn du den Thread einfach beendest, aber das würde ich nicht empfehlen, da du sonst sicher inkonsistente Daten oder sogar eine defekte Datenbank erhalten könntest.

Jacki O 20. Okt 2003 10:16

Re: TBatchmove.Execute abbrechen
 
Hallo,

das genau ist das Problem. Wenn der Thread in dem TBatchmove gerade Daten aus der DB bezieht beendet wird, läuft die "Verbindung" weiter, bis das Ende erreicht oder die Anzahl von Datensätzen = TBachMove.Reccount ist. Man müsste also immer warten, bis TBatchmove fertig ist. Das ist aber nicht so schön. Einfacher wäre es sicher, wenn man mit einer TQuery Komponente die Daten von der einen DB in die andere kopiert und nach jedem Datensatz überprüft, ob ein Terminated aufgetreten ist. Frage: wäre das denn mindestens genauso schnell wie mit TBatchMove?????


Gruß Jacki

MrSpock 20. Okt 2003 10:26

Re: TBatchmove.Execute abbrechen
 
Hallo Jacki O,
du könntest auch in einer Schleife durch die Datenbank laufen und das Kopieren manuell durchführen. Je nach Anzahl der Sätze könntest du bei jedem 100- oder 1000sten prüfen, ob der Benutzer abbrechen will und dann die Schleife verlassen. Das dürfte auch sehr schnell sein. Aber beachte auch mögliche Inkonsistenzen der DB beim Abbrechen der Operation.


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