HSQLDB .sql Script Aufruf über Java

koche82

Mitglied
Hallo zusammen,

ich benötige mal wieder eure Hilfe. ich habe ein Programm entworfen, welches beim Aufruf eine Datenbank erzeugt und die Tabellen für den Input generiert. Durch die Vielzahl der vielen Tabellen wächst dadurch mein SourceCode extrem an. Meine Idee wäre es nun gewesen, dass ich die SQL Statements in ein .sql Script exportiere und diese dann im Java-Programm aufruf. Leider scheint es hierzu keine passende Lösung zu geben und ich müsst stattdessen das Script eigenständig lesen und die Befehle selbst ausführen, ist dies richtig?

zur Info
Für MySQL scheint es hierzu einen ScriptRunner zu geben:
http://www.mkyong.com/jdbc/how-to-run-a-mysql-script-using-java/
 

koche82

Mitglied
und anhand welcher Argumente möchtest du diese These belegen?
Zur Info:
- Die Datenbank muss nicht persistent bestehen bleiben, deswegen nutze ich hier auch die HSQLDB.
- Es handelt sich um keine Kundendatenbank, in welcher ich 2 Tabellen habe und "nur" Name und Adresse speichere. Mittlerweile besitze ich in dieser Datenbank mehr als 25 Tabellen und einige Views. Da jede Tabelle separat angelegt/gedropped werden muss und einige noch Indizes haben, wächst der Source-Code natürlich auch entsprechend an.

Ganz so doof bin ich sicher nicht, dass ich jeden Update und Insert Befehl als eigene Anweisung durchführe.
 

Thallius

Top Contributor
Eine dynamische Anzahl an Tabellen macht in der Regel keinen Sinn.

Sag mir doch mal wozu man sowas braucht. Dann habe ich auch wieder was gelernt...
 

koche82

Mitglied
Ich habe auch nicht gesagt, dass diese Tabellen dynamisch sind. Alle Tabellen sind relational angelegt und aufgrund der 1:n Beziehungen notwendig.
Die Datenbank wird von mir aufgebaut und mit Dateninhalt befüllt und anschließend auf Konsistenz geprüft, danach kann sie wieder gelöscht werden.
 

Joose

Top Contributor
Mittlerweile besitze ich in dieser Datenbank mehr als 25 Tabellen und einige Views. Da jede Tabelle separat angelegt/gedropped werden muss und einige noch Indizes haben, ...
Warum muss jede Tabelle separat angelegt bzw. gelöscht werden? Du könntest doch alles CREATE/DROP TABLE Statements (und auch das anlegen von Keys, Indizes usw.) in eine sql Datei auslagern und diese bei Start bzw. Ende ausführen?
Dann gibt es in deinen Code nur noch die Zugriffe auf die Daten.

Ich habe auch nicht gesagt, dass diese Tabellen dynamisch sind. Alle Tabellen sind relational angelegt und aufgrund der 1:n Beziehungen notwendig.
Es hat sich anhand des "mittlerweile besitze ich in dieser Datenbank" so angehört, wie wenn immer wieder neue Tabellen hinzukommen oder welche wegfallen.

Die Datenbank wird von mir aufgebaut und mit Dateninhalt befüllt und anschließend auf Konsistenz geprüft, danach kann sie wieder gelöscht werden.
Wie schon oben gesagt: Auslagern von CREATE TABLE bzw. DROP TABLE Statements (usw.) in eine .sql Datei und die bei Start ausführen lassen. Auch die Dateninhalte die bei Beginn in den Tabellen sein soll könntest du per sql Datei eintragen lassen.
 

koche82

Mitglied
Genau das war ja meine Frage, ob es dafür eine Lösung gibt oder ich das .sql Script selber parsen und die Befehle ausführen muss.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M HSQLDB .Script-Datei entfernen oder sperren Datenbankprogrammierung 18
D Script, um alle 5 secs den Windows Title abzuspeichern Datenbankprogrammierung 4
M HSQLDB oder DERBY - warum SCRIPT Datei? Datenbankprogrammierung 0
H CSV Datei in MSSQL DB oder doch SQL Script Datenbankprogrammierung 11
E SQL-Blockbefehl / Script Datenbankprogrammierung 14
N SQLite Hibernate und Aufruf von Funktion SELECT last_insert_rowid() Datenbankprogrammierung 2
G Aufruf von SELECT INTO Datenbankprogrammierung 8
1 Aufruf einer View über Java Gui Datenbankprogrammierung 5
N Probleme beim Aufruf aus der DB Datenbankprogrammierung 7
C Stored Procedure - Aufruf mit call Datenbankprogrammierung 4
B MySQL Stored Procedure Aufruf funktioniert nicht Datenbankprogrammierung 4
H MIt oracle Verbinden (ungültiges Argument in Aufruf) Datenbankprogrammierung 4
btwX28 mysql abfrage über phpmyadmin Datenbankprogrammierung 8
Beginner22 Zugriff auf Datenbank aus Java über mariadb Datenbankprogrammierung 3
tom.j85 Objekt in OneToOne Beziehung über http request anzeigen lassen Datenbankprogrammierung 3
N Java Abfrage über GUI, Daten hinzufügen Datenbankprogrammierung 54
C Datenbank anlegen und über eine Website mit Daten füllen? Datenbankprogrammierung 25
J Nur CRUD über Datenbank Klasse, oder auch mehr ? Datenbankprogrammierung 2
M MySQL Passwort Clientseitig ändern und über Button ausführen Datenbankprogrammierung 0
F MySQL Einfügen von Datensätzen über Java Datenbankprogrammierung 8
L Oracle Datenbank über Java aufrufen Datenbankprogrammierung 29
D JPQL- Query über mehrere Tabellen Datenbankprogrammierung 7
B MySQL: Port ändern über GUI? Wo und wie Port ändern? Datenbankprogrammierung 0
J mySQL- Java Application - Zugriff über Internet Datenbankprogrammierung 3
M Feedback für neues Buch über "Java und Datenbanken" erwünscht Datenbankprogrammierung 8
L H2 Embedded H2 Datenbank über Netzwerk zugreifen? Datenbankprogrammierung 0
W SQL-Statement Datenbankabfrage über Yahoo Datenbankprogrammierung 0
J wie mit resultset.next() über Datensätze iterieren? Datenbankprogrammierung 15
dat_vin JavaFX Datenbankverbindung über JPA und MySQL Error Datenbankprogrammierung 0
E Wie kann man mit einer ID-Spalte über eine Parameterübergabe auf eine Seite verweisen? Datenbankprogrammierung 17
I JPA - BoneCP über die persistence.xml konfigurieren Datenbankprogrammierung 0
AssELAss Oracle Wildcard-Suche über zwei Felder Datenbankprogrammierung 5
M MySQL Insert über mehrere Tabellen Datenbankprogrammierung 7
K SQL Befehle über java Oberfläche Datenbankprogrammierung 4
S MySQL Abfrage über mehrere Tabellen + Einträge werden überschrieben Datenbankprogrammierung 1
G JDBC Connect nur über SID fehlerfrei möglich Datenbankprogrammierung 2
M Information über Änderungen Datenbankprogrammierung 8
F MySQL Daten ändern über Java Datenbankprogrammierung 3
C SQL-Statement SELECT über 3 Tabellen Datenbankprogrammierung 5
I MySQL Vergleich über mehrere Tabellen! Join? Datenbankprogrammierung 6
B DB Anbindung über Tomcat Datenbankprogrammierung 16
S ID Wert von Insert über jdbcTemplate.update Datenbankprogrammierung 3
S mySQL Manipulation über JavaServer Faces (Tutorial gesucht) Datenbankprogrammierung 10
C Mit jsp über Java eine DB Abfrage durchführen --> java.lang.ClassNotFoundException Datenbankprogrammierung 4
C H2 über DynDNS Datenbankprogrammierung 2
D Frage zu INSERTS über mehrere Datenbanktabellen Datenbankprogrammierung 3
J MySQL Verbindung über JDBC scheitert immer Datenbankprogrammierung 2
C Datenbanklogin über JSF Datenbankprogrammierung 3
G JOIN Abfrage über mehrere Tabellen Datenbankprogrammierung 15
O MySQL sql Datei einzelner Tabellen erzeugen (über Java Programm) Datenbankprogrammierung 6
J mit java in access DB über odbc/jdbc Datenbankprogrammierung 2
G SQL Abfrage über mehrere Tabellen Datenbankprogrammierung 28
S SQL inner join bei >10 Tabellen über 2 Variablen Datenbankprogrammierung 2
M Messenger über MySQL sinnvoll? Datenbankprogrammierung 7
N Wie kann ich Zugriff auf eine MS Access DB (mit JDBC) über Netzwerk erreichen? Datenbankprogrammierung 7
T DB2 delete/update über 2 Tabellen Datenbankprogrammierung 2
multiholle SQL Querry über mehrere Spalten Datenbankprogrammierung 12
klattiator Aufklärung über OR-Mapping Datenbankprogrammierung 7
B Mysql über jdbc sehr langsam Datenbankprogrammierung 4
X Abfrage über 2 Tabellen mit Tücken Datenbankprogrammierung 3
M Auswerten über drei Tabellen Datenbankprogrammierung 2
O Mittelwert über mehrere Zeilen Datenbankprogrammierung 11
P Benötige etwas Hilfe bei Datanbankabfrage über Java Datenbankprogrammierung 3
R Abfrage über Zwischentabellen? Datenbankprogrammierung 2
N Unbekannte Datenbank über Metadaten auslesen? Datenbankprogrammierung 9
S Select über mehrere Datenbanksysteme Datenbankprogrammierung 14
S Mysql abfrage über 2 tabellen. Datenbankprogrammierung 10
U Java und Mysql Problem über 24:00:00 Stunden Datenbankprogrammierung 4
M MySQL-Datenbank über Java ansprechen Datenbankprogrammierung 5
W Zwei Fragen über JDBC und MySQL Datenbankprogrammierung 2
G Funktionen/Arbeitsschritte über Menü sinnvoll aufteilen Datenbankprogrammierung 3
G JDBC über Proxy Datenbankprogrammierung 21
C Hausarbeit -> Datenbankzugriff über JDBC Datenbankprogrammierung 2
F Login per JDBC über PHP-Skript? Datenbankprogrammierung 4
R Kann man mit JDBC auch über das Internet auf DB zugreifen? Datenbankprogrammierung 4
B Hilfe! Problem bei Verbindung über JDBC/ODBC Datenbankprogrammierung 4
S Java Verbindung über das Netzwerk Datenbankprogrammierung 4
N Abfrage über zwei Datenbanken Datenbankprogrammierung 9
V Werte über Konsole in Datenbank schreiben Datenbankprogrammierung 2
D Datenbank zugriff über Client/Server Datenbankprogrammierung 4
V Access-Transaktion über jdbc:odbc Datenbankprogrammierung 4
G Infos über implementierungsspezifische Aspekte d. DB -Progr. Datenbankprogrammierung 2
T Problem bei MySQL Connect über JavaBean Datenbankprogrammierung 3

Ähnliche Java Themen

Neue Themen


Oben