# HSQLDB Datenbank Manager



## benedikt.s (18. Aug 2008)

Hallo zusammen,

kann mir jemand einen komfortablen HSQLDB Datenbank Manager empfehlen?
Der mitgelieferte Manager ist ja recht dürftig.

Benötigte (Grund)-Features wären:

- Tabellen / Felder / Funktionen - erstellen, ändern, löschen
- Datensätze - erstellen, ändern, löschen

Arbeite normalerweise mit dem EMS SQL-Manager, der gefällt mir recht gut.
Gibt leider keine Version für HSQLDB.

Kann auch kommerziell sein.

Danke und Gruß,
Benedikt


----------



## tfa (18. Aug 2008)

http://www.minq.se/products/dbvis/


----------



## benedikt.s (18. Aug 2008)

tfa hat gesagt.:
			
		

> http://www.minq.se/products/dbvis/



Erstellen von Tabellen und einfügen/ändern/löschen von Datensätzen geht damit schon recht komfortabel.

Leider kann das Programm keine Änderungen an Tabellen/Spalten vornehmen wenn Diese einmal erstellt wurden.

Gibt es noch weitere Vorschläge?

Danke und Gruß
Benedikt


----------



## tfa (18. Aug 2008)

Wenn du bestehende Tabellen ändern willst, kannst du das mit dem ALTER TABLE Statement machen.


----------



## benedikt.s (19. Aug 2008)

tfa hat gesagt.:
			
		

> Wenn du bestehende Tabellen ändern willst, kannst du das mit dem ALTER TABLE Statement machen.



Ja ist klar. Die ganze DB kann mittels SQL Statements verwaltet werden...

Da mir das auf die Dauer aber zu aufwendig ist suche ich ein vernünftiges Tool, dass diese
Standard-Aufgaben per GUI bewältigen lässt.

Für andere Datenbanken gibt es solche Tools, bin mir sicher auch für HSQLDB.

---

Eine Funktion die mir z.B. sehr wichtig ist, ist das Umsortieren von Tabellenspalten. 
EMS löst das über Temporary Tables und passendem Umkopieren der Daten.

So ein Statement von Hand einzugeben wäre z.B. viel zu aufwendig.

Grüße,
Benedikt


----------



## tfa (19. Aug 2008)

Ich kenne noch ERwin, das ist allerdings kommerziell. Keine Ahnung, ob man damit HSQLDB behandeln kann.

Deine Anforderungen kommen mir nebenbei bemerkt komisch vor. Warum sollte man Tabellenspalten umsortieren wollen? Große Tabellenänderungen sollten auch nur sehr selten nötig sein -- hauptsächlich während der Anfangsphase der Entwicklung. Und dafür kann man z.B. Hibernate einsetzen und sich das DB-Modell automatisch generieren lassen.


----------



## benedikt.s (19. Aug 2008)

Ist auch für die Entwicklung gedacht. 

Da wir Inkrementell entwickeln und verschiedene Meilensteine bereits vorab ausliefern, ist es wichtig die Tabellen - ohne großen Aufwand - auch im Nachhinein ändern zu können. (z.B. beim Einspielen eines neuen Updates)

Oft kommt es auch vor das neue Ideen und Funktionen erst im Laufe der Tesphase aufkommen, so dass spätere Änderungen am Datenmodell erforderlich sind.


----------



## Gelöschtes Mitglied 5909 (19. Aug 2008)

http://www.squirrelsql.org/

oder 

Oracle JDeveloper

und eigentlich sollte man mögliche nachträgliche änderungen beim erstellen des datenmodels berücksichtigen


----------



## benedikt.s (20. Aug 2008)

Squirrel kann nur HSQLDB lesen und Datensätze verändern. 

JDeveloper unterstützt - soweit ich sehen konnte - HSQLDB garnicht.



			
				raiL hat gesagt.:
			
		

> und eigentlich sollte man mögliche nachträgliche änderungen beim erstellen des datenmodels berücksichtigen



In der Regel sind es nur kleinere Änderungen - neue Spalte, neuer Fremdschlüssel.

Aber man kann schlecht etwas berücksichtigen das man noch nicht kennt ;-)


----------



## Steven Hachel (22. Aug 2008)

Also,

er DbVisualizer ist schon Top dafür.
Gucke dir mal die Features an, die das Programm in der Vollversion bietet. Soviel kostet dat ja nun auch nicht.


----------



## Steven Hachel (22. Aug 2008)

... wieso kann man eigtl. nicht seine Beiträge löschen, wenn se ausversehen doppelt gepostet worden sind?  :?:


----------



## tuxedo (22. Aug 2008)

Hehe, der Bene im Java Forum -> *welcome*

Tipp vom "Kollegen": Schau dir mal h2-database.com an ... (jetzt mal unabhängig vom Admin-Tool)

Gruß
Alex


----------



## Steven Hachel (22. Aug 2008)

hihi,

ich find das immer lustig, wie die einzelnen Anbieter mit ihren Performance Werten spielen.
Einer will schneller als der andere sein. ^^
Für unsere Applikation hat die H2 von der Geschwindigkeit her den kürzern gezogen.
Waren zwar nue 3-4 Sekunden, aber dat reicht. ^^


----------



## Det (26. Aug 2008)

Steven Hachel hat gesagt.:
			
		

> Für unsere Applikation hat die H2 von der Geschwindigkeit her den kürzern gezogen.
> Waren zwar nue 3-4 Sekunden, aber dat reicht. ^^



Wäre jetzt noch interessant zu erfahren, wer schneller war.  :?:


----------



## benedikt.s (26. Aug 2008)

Steven Hachel hat gesagt.:
			
		

> Also,
> 
> er DbVisualizer ist schon Top dafür.
> Gucke dir mal die Features an, die das Programm in der Vollversion bietet. Soviel kostet dat ja nun auch nicht.



Hi Steven, 

jo das steht zwar in den Features, aber offensichtlich gibt es hier noch unterschiede, je nachdem mit welcher 
Datenbank man arbeitet. 

Es gibt einen Feature-Request für Alter-Table mit HSQLDB - Minq hat aber momentan wohl nicht vor
diesen umzusetzen:

http://www.minq.se/forum/thread.jspa?messageID=7345

DBVis ist aber trotzdem noch der bisher beste Editor, den ich finden konnte.

Gruß, 
Bene


----------



## benedikt.s (26. Aug 2008)

alex0801 hat gesagt.:
			
		

> Hehe, der Bene im Java Forum -> *welcome*
> 
> Tipp vom "Kollegen": Schau dir mal h2-database.com an ... (jetzt mal unabhängig vom Admin-Tool)
> 
> ...



Hi Alex!  

lang nix mehr gehört! Schreib dir gleich noch ne Mail.

---

h2-database wäre auch ne Möglichkeit. Im direkten Vergleich zu HSQLDB (auf der HP) ist es ja recht ähnlich.

Da es sich aber nicht um eine Zeitkritische Anwendung handelt, würde ich die Prio eher 
auf den Bereich Admin-Tool setzen.

Welches Tool verwendet Ihr denn für H2?

Grüße,
Bene


----------



## Guest (29. Aug 2008)

Det hat gesagt.:
			
		

> Steven Hachel hat gesagt.:
> 
> 
> 
> ...



HSQLDB war deutlisch schneller bei einem Query und 10000 Datensätzen inklusive "LEFT OUTER JOIN".


----------



## Steven Hachel (29. Aug 2008)

jetzt war i och mal *Gast* ^^


----------



## benedikt.s (11. Sep 2008)

Servus zusammen!

Hab noch ein interessantes Tool gefunden: 

http://www.razorsql.com/

Kann zwar auch nicht alles, aber mehr als DBVis und ist dazu noch billiger (49.95$)

---

Funktionen: 

1. Tabellen erstellen mit nem Wizard
2. Spalten, PK, FK, Constraints hinzufügen
3. Droppen von Spalten und Constraints

---

Auch noch nicht perfekt (sortieren, ändern von Spalten und ändern von Tabellennamen fehlt) aber 
schon ganz nett.

Fall jemand in der Zwischenzeit noch was besseres gefunden bzw. noch findet -> bitte melden!!

Danke und Gruß.
Bene


----------



## maki (11. Sep 2008)

> Da wir Inkrementell entwickeln und verschiedene Meilensteine bereits vorab ausliefern, ist es wichtig die Tabellen - ohne großen Aufwand - auch im Nachhinein ändern zu können. (z.B. beim Einspielen eines neuen Updates)


Dann solltet ihr auf jedenfall die Tabellenstruktur nicht manuell ändern, führt zu Chaos.

SQL Skripte sind da das mittel der Wahl, lassen sich auch von Maven, ANT oder anderen Buildsystemen anstossen, könnte somit also auch von eurem CI Server im Rahmen der Integrationstests durchgeführt und getestet werden.


----------

