# H2 Datenbank Embedded?



## H2ToGo (10. Aug 2012)

Hallo,

ich habe eine Datenbank gesucht, die ich in mein Java-Programm integrieren kann, 
sodass man das Programm überall nutzen kann, ohne etwas installieren zu müssen.

Ich bin auf H2 gestoßen und habe mir mal ein Java-Projekt erstellt und die H2 jar
mit eingebunden. 

Habe ich nun eine voll funktionsfähige Datenbank? oO
Was wenn ich zusätzliche Erweiterungen der H2 haben möchte?
Wohin wird das ganze Zeug dann überhaupt gespeichert?

Grüße


----------



## Guybrush Threepwood (10. Aug 2012)

http://www.java-forum.org/datenbanken/122865-eingebettete-datenbanken.html


----------



## Gast2 (10. Aug 2012)

> Habe ich nun eine voll funktionsfähige Datenbank? oO


Eine voll funktionsfähige eingebettete Datenbank 



> Was wenn ich zusätzliche Erweiterungen der H2 haben möchte?


Was für Erweiterungen?



> Wohin wird das ganze Zeug dann überhaupt gespeichert?


Je nachdem wie du die DB konfiguriert hast. Entweder auf dem filesystem (persistent), oder in-memory, dann ist die DB weg sobald dein Programm aus ist. Für beides gibts Anwendungsfälle.


----------



## H2ToGo (10. Aug 2012)

Okay das klingt doch super 
Muss mir die Konfigurationsmöglichkeiten dann mal ansehen, denn etwas verwirrt 
bin ich. Habe gerade zum Testen mal in nem keinen Java-Programm eine Tabelle
erstellt und mit ein paar Werten gefüllt. Wenn ich jetzt allerdings die Datenbank
über die jar-file öffne, ist die Tabelle nicht da. Wenn ich das Programm allerdings
nochmal durchlaufen lassen will sagt er, sie ist schon vorhanden ^^

Zu den Erweiterungen:

Ich habe ein Programm, welches bisher auf PostgreSQL ausgelegt ist und 
viel Algorithmen von Postgre nutzt. Ich hatte gehofft diese auch für H2 
nutzen zu können.


----------



## H2ToGo (10. Aug 2012)

Im Anschluss daran gleich die Fragen:

Wo liegt die Config?
Und wo kann ich mein Benutzername und Passwort hinterlegen?


----------



## Gast2 (10. Aug 2012)

Welche Config meinst du?
Benutzername und Passwort übergibst du beim erstellen der Verbindung.

```
DriverManager.getConnection("jdbc:h2:~/pfad/zur/db", "username", "password");
```


----------



## H2ToGo (10. Aug 2012)

Im Code? oO

Zur config... deiner Frage nach zu urteilen konfiguriert man alles
direkt im Code?


----------



## Gast2 (10. Aug 2012)

Was genau willst du denn konfigurieren?
Du kannst nen paar Sachen per URL einstellen:
Features
Mit der H2 Konsole kannst du dich zu einer existierenden DB verbinden und dort nen paar Sachen machen.


----------



## H2ToGo (10. Aug 2012)

Okay, Gechecked!

Danke vielmals


----------

