TMemDataset is a unique fully indexable memory table that work like a regular TTable except the records and indexes are all stored in RAM. TMemDataset is BDE independent. It contains a fields definition property editor 'database desktop style'. Sorting the table is as easy as doing tbMem.OrderBy := 'Fld1;Fld2';