Naja du könntest bei jedem Programmstart mit einer "frischen" memory db arbeiten und jedesmal einmalig alle Tabellen und Datensätze der HDD db in diese per SQL übertragen und zum Programmende wieder zurück transferieren. Ob das letzlich dann für dich aus Performancesicht noch lohend ist ist wieder ein anderes Thema, denn die Übertragung der kompletten Datei dürfte einiges an Zeit beanspruchen.
Ein anderer Ansatz wäre eine reale RamDisk in die du bei Programmstart die DB Datei kopierst und dann von dort öffnest / bearbeitest und dann bei Porgrammende wieder zurück auf die HDD kopierst. Für eine RamDisk bist du aber soweit ich weiß auf Drittanbieter SW angewiesen, das wäre also nur eine Lösung wenn das Programm nur auf Rechnern genutzt wird die du selbst kontrollierst.
Ebenfalls interessant wäre dein Programmcode. Vielleicht ist es garnicht wegen der Festplatte so langsam, sondern weil du unnötig viele Einzelabfragen machst die du auch über eine Transaktion zusammenfassend ausführen könntest. Siehe dazu auch meinen Thread in dem mich Bugfix genau auf diesen Fehler aufmerksam gemacht hat: https://autoit.de/index.php?page…8387#post328387