Das ist ja sehr schön. Aber Du protokollierst den Fehler nicht - und wie schnell ist so eine Meldung weggeklickt. Nachher war's natürlich keiner. Und wenn Du mit dem ADS als echter Server-Version arbeitest (nicht die Local-Version), dann werden die Tabellen beim Schliessen der Connection nicht sofort alle geschlossen! Die werden noch eine Weile aus Performancegründen gecached, und zwar die 25 zuletzt benutzten.
Ich verwende dies hier, wenn ich sicher sein will, dass die Tabellen wirklich zu sind:
Delphi-Quellcode:
//------------------------------------------------------------------------
procedure TfrmMain.CloseAllAdsTables;
//------------------------------------------------------------------------
// Alle Tabellen auf jeden Fall schliessen
//------------------------------------------------------------------------
begin
Ace.AdsCacheopenCursors(0);
frmData.AdsConnection.CloseCachedTables;
frmData.AdsConnection.IsConnected := false;
Ace.AdsCacheopenCursors(25);
end;