Mi associo al suggerimento di DonFabio riguardo l'uso della piattaforma dbExpress.

Trattandosi di DataSet unidirezionali, non possono essere sfogliati spostandosi in avanti e indietro tra i record (navigando), ma è solo possibile muoversi in avanti partendo dal primo record.

Tuttavia, puoi utilizzare il componente TClientDataSet: si tratta di un DataSet molto potente in grado di memorizzare una tabella in memoria, caricandola da file oppure ottenendola da un altro DataSet (tabella, query o altro che sia) tramite un componente TDataSetProvider; quest'ultimo permette di tradurre le modifiche apportate alla tabella memorizzata nel ClientDataSet in statement SQL adatti all'aggiornamento dei record sul database server.

Maggiori informazioni sulla Guida in linea.

Puoi consultare anche articoli interessanti redatti da Cary Jensen sull'argomento: si trovano nella SoapBox di Borland.

Ciao!