Also da würde ich mir eine Datenbankanwendung schreiben.
Als Datenbank die
KbmMemTable nutzen.
Es handelt sich hierbei um Textdateien, die in einem
CSV-Datei-ähnlichen Format vorliegen (kann man problemlos mit anderer Software erstellen. Das Format muss halt stimmen und der Header (einfacher Text) muss syntaktisch korrekt sein.
Es ist also keine "richtige" Datenbank. Die Anzeige kann aber trotzdem über ein DBGrid erfolgen, die Daten können per Index unterschiedlich sortiert werden, das Setzen von Filtern ist möglich ...
Ist eigentlich, wenn die Datenmenge nicht zu groß wird, äußerst flexibel einzusetzen.
KbmMemTable
So 'ne Tabelle sieht als Datei prinzipiell so aus:
Code:
"@@FILE VERSION@@","251"
"@@TABLEDEF START@@"
"ToplevelDomain=String,250,""ToplevelDomain"","""",18,Data,"""""
"Country=String,250,""Country"","""",12,Data,"""""
"@@INDEXDEF START@@"
"ToplevelDomain=""ToplevelDomain"",""ToplevelDomain"""
"Country=""Country"",""Country"""
"@@INDEXDEF END@@"
"@@TABLEDEF END@@"
"ToplevelDomain","Country",
".ac","Ascension Island",
".ad","Andorra",
".ae","United Arab Emirates",
".aero","air-transport industry",
Ob man Zeichenfolgen in " und mit , getrennt haben möchte oder lieber andere Zeichen verwendet, kann man konfigurieren.
Einfache
CSV-Dateien kann man in der Regel mit marginalem Aufwand in den Datenteil der KbmMemTable konvertieren.
Ansonsten: ClientDataSet und alles was damit zusammen eine Datenbankanwendung möglich macht.
Ein Datenbankserver ist in beiden Fällen nicht erforderlich.
Über TAdo ... auf 'ne Accessdatenbank zugreifen.
Access ist dafür natürlich nicht erforderlich.
Über TADO ... kann man auch auf Exceltabellen zugreifen ohne dazu Excel benutzen zu müssen.
'ne Abneigung gegen Excel heißt nicht zwingend, dass man das dahinterliegend Dateiformat nicht nutzt. Das sind zwei Paar verschiedene Schuh.