Hallo,
das Hängen der Anwendung wirst Du nicht gänzlich verhindern können, es ist u. a. abhängig von der Datenmenge, die Du speicherst. 30 MB Bild als Blob, ist erstmal viel. Wenn Du auf diese Weise Adressen... speicherst, wird das in der Regel so schnell gehen, dass der Anwender davon (fast) nichts merkt.
Die Geschwindigkeit dürfte auch nicht unerheblich von der Art der Datenbank, der Leistungsfähigkeit des Datenbankservers, der Leistungsfähigkeit des Clients... abhängen.
Ob es sinnvoll ist, das Speichern von Daten in einen Thread auszulagern, mag ich nicht beurteilen.
Am Anfang sprachst Du von RichEdit, wenn es da hauptsächlich um Textverarbeitung geht, sollten die Antwortzeiten eigentlich nicht allzu hoch werden, es sei denn, die Texte enthalten viele oder große Bilder oder es sind eher Diplomarbeiten als normale Briefe.
Benötigst Du für jedes Projekt eine eigene Datenbankdatei oder reicht es, für jedes Projekt eine Tabelle in eine Datenbankdatei zu legen oder wäre es nicht sinnvoller, in einer Datenbank eine Tabelle anzulegen und die Tabelleninhalte über entsprechende Schlüssel, einem Projekt zuzuordnen.
Hier wäre es eventuell hilfreich, wenn Du uns etwas genauer mitteilen könntest, was Du insgesamt vorhast.
Z. B.: Eine Anwendung mit einer embeddeb
DB, die die
DB pro Client hat, wobei auch jedes Projekt eine eigene Datenbankdatei hat, damit die Datenbankdateien zwischen den einzelnen Clients ggfls. auch per USB-Stick ausgetausch werden können.
Oder soll es eine Anwendung werden, die auf vielen Clients läuft, wobei jeder Client eigentlich alle Projekte bearbeiten können soll (weil die Datenbankdateien z. B. auf einem für alle zugreifbaren Laufwerk liegen)...
Oder soll es eine Anwendung sein, die auch vom USB-Stick lauffähig ist und so incl. Datenbankdateien an jedem Rechner benutzt werden kann?
Soll die Software für den gelegentlichen Gebrauch ausreichen oder die tägliche Arbeit effektiv unterstützen (quasi ein Winword mit direkter Dokumentenablage in einer Datenbank)?