Ich selbst würde es in dem Fall wohl eher so machen, dass ich ohne Threads arbeiten würde. Eher würde ich dem Benutzer mitteilen, er möge sich jetzt etwas gedulden und dann die Datenbank-Operationen ganz normal im Hauptprogramm starten. Zwischendurch vielleicht bei passender Gelegenheit noch ein paar "Application.ProcessMessages", damit das Programm nicht völlig tot wirkt.
Falls du natürlich einfach nur auf eine Gelegenheit wartest, das Thema Threads näher kennenzulernen, könntest du das Programm so etwas aufhübschen.
So meine Einschätzung...
Bis denn
Bommel