Wenn ich ein DBGrid nehme muss ich die Datenbank ja immer offen halten, wenn ich mit den Daten arbeiten will.
Das Ziel ist aber die Datenbank nach dem lesen der Daten so schnell wie möglich wieder zu schließen.
Wenn alle Datensätze gelesen sind kann ich ohne DBGrid die Verbindung lösen und lokal im Grid arbeiten bis mal etwas geändert wird, was selten vorkommt.
Was nicht verbunden ist, kann nicht kaputt gehen. (Single user
DB).
Ich will das jetzt nicht empfehlen, in Zeiten von ORM und Co. ist ja das Arbeiten mit den
DB-Controls etwas "out", aber das Obige wäre genau das Szenario, wofür das TClientDataset gedacht ist.