- Klicken Sie im Project Management > Entities auf > main-java auf Create tables from JPA entities.
- Wählen Sie bei Persistence Unit die gewünschte Datenquelle aus.
- Selektieren Sie im folgenden Assistent den Ordner resources.
...
- Es ist noch keine Datenbank vorhanden.
- Die Datenbank soll erstmalig auf einem neuen Test- oder Produktiv-System deployt deployed werden.
- Legen Sie bei DDL File eine Bezeichnung fest, z.B. Create_CarsDB.ddl.
- Klicken Sie auf Finish.
Ergebnis:
- Create Table Statements - Generiert aus allen Entities Create Table StatementsDatenbanktabellen.
...
Optionen:
- Update Schema - Updated vorhandene Datenbanktabellen, falls schon vorhanden
- Export to Database - Führt die generierten Statements sofort aus.
...
- Legen Sie bei DDL File eine Bezeichnung fest, z.B. Update_CarsDB.ddl.
- Wählen Sie bei Options die Option Update Schema an.
- Klicken Sie auf Finish.
Ergebnis:
- Update Statements Schema - Generiert nur für die durchgeführten Änderungen und Erweiterungen die entsprechenden Statements.
Parameter:
- Export to Database - Führt die generierten Statements sofort aus. (Braucht eine aktive Connection zur Datenbank)
DDL-Skripte ausführen
- Stellen Sie eine Verbindung zu einer Datenquelle her.
- Öffnen Sie die im Project Management > main-resources generierte DDL-Datei, die Sie ausführen möchten.
- Legen Sie im folgenden SQL-Editor bei Type, Name und Database die Datenquelle fest auf der Sie das DDL-Skript ausführen möchten.
- Klicken Sie mit Rechtsklick in den SQL-Editor und wählen Sie im Kontextmenü > Execute All.
Tipps:
- Datenbank manuell generieren und updaten - Es ist hilfreich die DDL-Files zu sämtlichen Datenbank-Änderungen versioniert zu verwalten. Beispiel:
Datenbank automatisiert generieren und updaten - Beim initialen Starten Ihrer Anwendung im Servlet-Container lässt sich die Datenbank vollautomatisch deployen oder updaten. Dazu müssen Sie lediglich in der der persistence.xml in der folgenden Zeile den Parameter Parameter validate ändern ändern.
Code Block language java theme Confluence <property name="hibernate.hbm2ddl.auto" value="validate" />
Parameter:
- validate - Standard-Wert. Das Datenbankschema wird lediglich überprüft. An der Datenbank selbst werden keine Änderungen vorgenommen.
- update - Die Datenbank wird anhand der Änderungen an den Entities entsprechend aktualisiert. Es werden ausschließlich Änderungen und Erweiterungen durchgeführt.
- create - Die Datenbank wird vollständig deploytdeployed. Bereits vorhandene Tabellen und Daten werden dabei gelöscht.
- create-drop - Die Datenbank wird vollständig deployt deployed und nach dem Beenden der Session wieder vollständig gelöscht. Diese Strategie eignet sich z.B. für automatisierte Softwaretests.
DDL-Skripte ausführen
...
- .
...