nun denn...
Es existiert ein Testprojekt in dem ich drei verschiedene Arten eingebaut habe eine (SQLite) Datenbank anzusprechen. Basisziel ist es, Erstellern von Demos/Beispielen mit DB-Zugriff ein Werkzeug in die Hand zu geben das sich um alles kümmert was nicht das eigentliche Beispiel betrifft.
1 SQLdbGUI
Zielgruppe -> Beispielersteller die ein Datenmodul brauchen um ihre Abfragen zu verbinden.
Ein komplexeres Datenmodul. Automatische DB-Erstellung, Suche nach DDL/so, manueller und automatischer Import eines .SQL Files um für das Beispiel immer wieder die gleichen Daten fürs Beispiel zu haben.
Der Beispielersteller muss nur das .SQL File zur Verfügung stellen. Ein standard.sql für eine Demodatenbank liegt auch bei. Diese könnte man ggfs auch für unterschiedliche Zwecke erweitern. Zugriffskomponente: TSQLConnector
2 SQLdbSimple
Ein einfaches Datenmodul. Datenbanknamen anpassen und verwenden. Keine besonderen Funktionen, nur eine Import-Funktion zum Bestücken der DB. Zielgruppe->Beginner (wegen des schnelleren Erfolges). Zugriffskomponente: TSQLite3Connection
3 SQLdbRuntime
KEIN Datenmodul sondern "nur" eine Klasse über die alles genauso wie bei SQLdmGUI funktioniert, aber kein Datenmodul ist. Alle nötigen Komponenten/Objekte werden zur Laufzeit erzeugt. Funktion gleich wie SQLdbGUI. Zugriffskomponente: TSQLConnector
Die Varianten 1 und 3 können mittels Define-Switches an unterschiedliche Anforderungen angepasst werden. Ein beiliegendes Include-File regelt über Konstanten Namen und Bezeichnungen. Daher sind diese Varianten auch für serverbasierte DBs verwendbar.
Ich bitte erstens mal um Hilfe das Konzept und die Umsetzung zu testen und ggfs auseinander zu nehmen

Das Teil kann nur Aussicht auf Erfolg haben wenn es solide ist und Erstellern von Demos Zeit spart und Funktion bietet.
SQLdbSimple funktioniert klaglos
SQLdbGUI klappt auch.
SQLdbRuntime: hier wird der DB-Zugriff gemacht, der Import/Query klappt nicht ob wohl ich Stein und Bein schören könnte dass die Variante gleich wie SQLdbGUI ist nur als Runtime.
Exception: database not assigned. Bin überzeugt ich habe die DB zugewiesen, denn der Connect zur DB klappt ja.
Offensichtlich nicht -- ich finde den Unterschied leider nicht -- von daher brauchts Hilfe.
Zudem gibt es noch eine Auffälligkeit bei SQLdbGUI und SQLdbRuntime (bei SQLdbSimple klappt es):
Beim Workflow:
Zugriff erzeugen, Importieren, Query starten -- und erneut Importieren wird gemeckert:
TSQLite3Connection: database table is locked
Offensichtlich schalted der TSQLconnector auf die TSQLite3Connection um und irgend etwas scheint da nicht korrekt eingestellt zu sein. Also auch hier bitte Hilfe.
THX