# Weitere Fragen zu hsqldb



## Alex_winf01 (17. Jul 2006)

Ich habe noch folgende Fragen zu hsqldb:

1. Wie kann ich hsqldb administrieren (nicht Client-/Server)
2. Muss der Anwender für die Nutzung von hsqldb eigentlich auch das SDK installiert haben? Runtime ist ja klar, sonst läuft kein Java-Programm.


----------



## Alex_winf01 (18. Jul 2006)

Zu Punkt 1 folgende Erläuterungen:

Ich habe die ganzen CREATE-TABLE-Anweisungen und die INSERT-Anweisungen in einer Textdatei liegen. Diese brauche ich dann ja nur einzubinden, um die Datenbank usw. anzulegen, oder? Zum Schluss benötige ich dann nur eine csv-Datei, damit der Anwender seine Daten wieder an uns zurücksenden kann.


----------



## foobar (18. Jul 2006)

> Muss der Anwender für die Nutzung von hsqldb eigentlich auch das SDK installiert haben?


Nein, nur das JRE.



> Ich habe die ganzen CREATE-TABLE-Anweisungen und die INSERT-Anweisungen in einer Textdatei liegen. Diese brauche ich dann ja nur einzubinden, um die Datenbank usw. anzulegen, oder? Zum Schluss benötige ich dann nur eine csv-Datei, damit der Anwender seine Daten wieder an uns zurücksenden kann.


Klingt vernünftig. Was genau ist jetzt die Frage?



> Wie kann ich hsqldb administrieren (nicht Client-/Server)


Was willst du denn machen?


----------



## me.toString (18. Jul 2006)

Also wenn du HSQLDB administrieren willst, kannst du direkt auf ein Tool aus der HSQLDB zurückgreifen (ist zwar nur als Demo gedacht ... aber es funzt ganz gut) 
Zu finden unter: <hsqldb_home>/demo/runManager.sh (oder auch .bat)

Du kannst natürlich auch jedes andere DB-Tool nehmen, welches sich via JDBC mit einer DB verbinden kann. Ich nehme da immer den DBVisualizer ... lediglich den JDBC-Treiber bekannt machen und schon kann's los gehen.

oder meinst du vielleicht was ganz anderes mit administrieren ??


----------



## Alex_winf01 (18. Jul 2006)

@ foobar

Ich liefere die ganzen Tabellen inkl. Einträge dem Anwender mit. Mein "Problem": Wie kann ich diese Textdatei einbinden, so dass diese 
a) ausgeführt werden (sprich: Tabellen anlegen, Inserts ausführen)
b) das ganze muss auch noch auf Text-Tabellen funktionieren.


----------



## foobar (18. Jul 2006)

> Ich liefere die ganzen Tabellen inkl. Einträge dem Anwender mit. Mein "Problem": Wie kann ich diese Textdatei einbinden, so dass diese
> a) ausgeführt werden (sprich: Tabellen anlegen, Inserts ausführen)
> b) das ganze muss auch noch auf Text-Tabellen funktionieren.


Da gibt es viele Möglichkeiten.

- Du packst alle Statements in ein SQL-Script und führst dieses beim Start aus.

- Du verpackst deine Daten als CSV und kopierst diese einfach in den Ordner in dem die DB liegt (sofern du nur Text-Tables verwendest)

- Man könnte auch die Kundendaten als XML oder ähnliches speichern und dann über einen Menüpunkt importieren d.h. File parsen, Beans bauen, in DB schreiben.

Du mußt eben genau wissen was für dich/ deine Kunden am einfachsten zu Handhaben ist.

In meinem aktuellen Projekt arbeite ich auch mit HSQLDB, aber da verwende ich eine ganz andere Form der Initialisierung:
Beim Start der Anwendung wird überprüft ob der DB-Ordner vorhanden ist ansonsten wird er erstellt und alle Tabellen werden erzeugt. So ist immer Sichergestellt, daß die DB korrekt Iniatilisiert ist.


----------



## Alex_winf01 (18. Jul 2006)

Vielen Dank.


----------

