Wenn du deinen Record verwendest und das ganze dann in einer "Datenbank" via MemoryDataset (bzw. TClientDataSet) speicherst, verwaltest du deine Tabelle unnötigerweise doppelt. Natürlich kannst du eine Tabelle anlegen, die genau die Felder besitzt, die du in deinem Record bereits erstellt hast. Das ist aber erstens vollkommen umständlich und beansprucht zweitens unnötig Speicherplatz. Verwende doch stattdessen ausschließlich das Dataset als Datenpool. Du legst dann einfach deine Tabelle im Dataset an und arbeitest damit. Das bringt zudem weitere Vorteile wie Sortierung, leichteres Suchen via Locate oder Selektion z.B. aller Namen, die mit "M" anfangen.
Eine einfache Einführung in die Arbeit mit Memorydataset findest du im Delphi-Treff, das würde ich an deiner Stelle mal durcharbeiten:
Einfache Datenbanken mit MyBase
Besser wäre es natürlich, du würdest eine richtige Datenbank verwenden, z.B. Firebird. Das erfordert zwar etwas Einarbeitung, bringt dich aber auch weiter in deiner persönlichen Entwicklung zum Programmierer. Und du kannst damit noch viel mehr machen als mit Records oder einem MemoryDataset, kannst mehrere Tabellen zentral verwalten, hast es wesentlich einfacher beim Erstellen der Tabellen und vieles mehr ...