Manchmal hilft es, einfach nur ein paar Hinweise aus anderen Köpfen zu lesen, um die eigenen Denkprozesse aus der Sackgasse zu führen. Dank eurer Antworten bin ich auf eine ganz einfache Lösung gestoßen: Stored Procedures in der
DB anlegen und die bei Bedarf aufrufen:
Delphi-Quellcode:
Procedure TDatBankEdit.Vst_Mark(Modus: Byte);
begin
DatMod.Dsrc_Berufe.Enabled := False;
CASE Modus OF
0 : DatMod.StoredProcMain.StoredProcName := 'BERUFE_MARKNONE';
1 : DatMod.StoredProcMain.StoredProcName := 'BERUFE_MARKALL';
2 : DatMod.StoredProcMain.StoredProcName := 'BERUFE_MARKTOGGLE';
END;
DatMod.Trans_Main.Active := True;
DatMod.Trans_Update.Active := TRue;
DatMod.StoredProcMain.ExecProc;
DatMod.Qset_Berufe.Refresh;
end;
Dabei werden meine knapp 24.000 Einträge in 0,8 bis 0,9 Sekunden aktualisiert. Somit sei euch allen, die ihr meine grauen Zellen erfolgreich angeregt habt, herzlich gedankt