Suche HSQLDB Tutorial/Lektüre

DefconDev

Bekanntes Mitglied
Hallo zusammen,

ich möchte mich in HSQLDB einarbeiten, habe bisher null Schimmer wie ich sowas in Java(Ecplise) einbinde.

Ebenso bin ich verwirrt über die Syntax. Wird HSQLDB wie SQL über die selbe Syntax angesprochen?

Mein Programm soll auf eine interne Datenbank zugreifen, ich brauche aber keine Datenbank die auf einem Server liegt und sich erst connecten muss. Soweit ich das verstehe ist das bei SQL zwingend erforderlich.

Was könnt ihr mir empfehlen, TUT(in Englisch geht auch aber nicht in indisches Englisch) oder Lektüren in Deutsch die HSQLDB und Java behandeln.
 
Zuletzt bearbeitet:

turtle

Top Contributor
Viele Infos findest (natürlich) in der offiziellen Doku hier und natürlich hier im Forum:)

Ich hoffe ich kann einige Fragen beantworten, obwohl ich dringend rate sich mal die hsqldb-Doku anzuschauen

Wird HSQLDB wie SQL über die selbe Syntax angesprochen?
Eine relationale DB wird IMMER mit SQL angesprochen. Du kannst in der ConnectionURL angeben, welche DB du meinst und beispielsweise User/Passwort angeben.

ich brauche aber keine Datenbank die auf einem Server liegt und sich erst connecten muss.
So etwas nennt man üblicherweise Embedded-DB, weil die DB in deine Applikation integriert/embedded ist und genutzt werden kann OHNE ein Serverprogramm zu starten.

Vorteil ist das du einfach eine DB anlegen und nutzen kannst. Nachteil ist, das nur ein Programm auf die DB zugreifen kann und nicht mehrere parallel. Dies ist manchmal doof, wenn deine Applikation läuft und du mit einem SQL-Tool wie Squirrel nachschauen möchtest wie es gerade in den Tabellen aussieht. Dann KANNST du HSQLDB im Servermodus starten oder deine Applikation beenden und danach mit dem SQL-Tool nachschauen. Musst du entscheiden, was dir genehmer ist. Ich verwende lieber embedded-Modus und beende meine Applikation.
Java:
Connection c = DriverManager.getConnection("jdbc:hsqldb:file:testdb", "SA", "");
Mit diesem Kommando beispielsweise öffnest du eine Verbindung zur lokalen DB testdb. Dieses startet die DB im embedded-Mode. Dazu musst du "nur" die hsqldb.jar im Classpath liegen haben.
Java:
 Connection c = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/xdb", "SA", "");
Mit diesem Kommando öffnest du eine Verbindung zu einer DB im Servermodus auf localhost.
 

DefconDev

Bekanntes Mitglied
332 Seiten, nicht schlecht :D

Ich habe mir gestern SQuirrel angesehen, und komme überhaupt nicht mit den Begrifflichkeiten klar. Mir erschließt sich überhaupt nicht was ein Aliase zb. sein soll. Bzw. brauche ich das Programm überhaupt? Eigentlich ist es doch nur eine Art-Viewer oder?

Kann ich alternativ nicht auch odb Datenbanken einbinden, sind doch auch HSQL-Datenbanken oder nicht? Also da empfinde ich die Verwaltung über Openoffice um einiges angenehmer.

Geht dann die Connection genau so wie du beschrieben hast?


EDIT: Achja, kann ich mir Bücher über SQL besorgen die von 2004 sind, oder hat sich über die Jahre hinweg extrem viel verändert hinsichtlich der Syntax?
 
Zuletzt bearbeitet:

turtle

Top Contributor
Mit odb Datenbanken kenne ich mich nicht aus. Meine aber gelesen zu haben, das sie nur im Servermodus funktionieren und dies genau das ist was du NICHT haben wolltest. odb-Dateien sind aber auch "nur" zip-Dateien, die du mit einem zip-Tool auspacken kannst und darin ist eine hsqldb-database enthalten. Habe ich aber noch nie probiert.

Ich gebe zu, das Squirrel "gewöhnungsbedürftig" ist, insbesondere wenn man wenig Ahnung von DBs hat;) In der Tat ist Squirrel ein Viewer, um sich Datenbankinhalte anzuschauen. ABER daneben kannst du via SQL eine DB anlegen, ändern und Daten pflegen. Ist also das "Schweizer-Taschenmesser" wenn es darum SQL-DB zu manipulieren.

Squirrel kann auf jede DB zugreifen, sofern ein JDBC-Treiber vorhanden ist. Damit der für hsqldb gefunden wird, musst du den Pfad zur JAR-Datei unter Driver im Tab Extra-Classpath in Squirrel bekannt machen.
Danach kannst du einen Alias einrichten. Dies ist die Bekanntmachung einer Datenbank, in deinem Fall für eine HSQLDB-Datenbank, die den Driver verwendet, den du im obigen Schritt eingerichtet hast. Hier kannst du Werte angeben in der Connection-URL festlegen. Wichtig ist hier besonders der Pfad wo denn die DB auf der Platte liegen soll.
 

DefconDev

Bekanntes Mitglied
Ich muss noch mal nerven.

Ich bin gerade ziemlich unsicher wie ich an mein "Problem" heran gehen soll/sollte.

Mein Programm ist in Swing geschrieben, liest aus mehreren Sheets(genau 10) "etliche" Datensätze aus einer ods Tabelle. Das sind ca. 10 Zeilen pro Sheet. Dabei können die Zeilen erweitert werden und die Spalten auch, also die Datensätze können beliebig verändert werden durch mein Programm und mit neuen Daten gefüllt werden.

Warum ich jetzt auf eine Datenbank umschwenken will, ist folgender Grund,
1. desto mehr Datensätze ich daraus lese umso länger dauert der ganze Lade-Prozess, dauert jetzt schon 5 Sekunden.
2. Der Programmieraufwand ist enorm, wenn ich irgendwelche neue Statistiken einbauen will. Ich muss permanent mit doppelten for Schleifen die Zellen abfragen.
3. Dann ist es ebenso sehr aufwändig die aktualisierten Datensätze in die Tabelle zu schreiben.
4. Das nervigste ist aber, die ods also die Tabelle wird außerhalb der jar gelagert und somit ist sie anfällig. Anfällig in der Hinsicht, sobald ich das Dokument öffne und ausversehen eine nicht beschriebene Zelle beschreibe zb. mit einer Leertaste, ist mein ganzer Code hinfällig. Denn ich muss die Spaltenköpfe/Zeilenköpfe bestimmen und sobald eine Zelle mehr vorhanden ist als es sollte, gibt es schon Probleme mit der Zellenabfrage.



Jetzt komme ich zur meiner abschließenden Frage, ist für eine Tabelle mit 10 Sheets, die zurzeit jeweils 10 Zeilen und im Schnitt pro Sheet 26 Spalten besitzt, sinnig eine embedded Datenbank aufzusetzen? Oder gibt es noch etwas anderes. Sollte es nichts anderes geben, mit welchen Programm außer MS-Acess kann ich die Datenbank erstellen und die die Datensätze aus meiner bisherigen Tabelle in meine DB verlagern? Oder muss ich das alles in meinen JavaCode festhalten?


EDIT: Achja, was mir noch einfällt, die Datensätze wie sie in meiner Tabelle gezeigt werden, werden NIE so dargestellt in meiner GUI. Also ich programmiere keine Datenverarbeitungssoftware oder ähnliches. Mir geht es mehr darum, Statistiken zu erstellen die im Hintergrund innerhalb der DB abgefragt werden. Ich hoffe ich habe mich nicht zu kompliziert oder unpräzise ausgedrückt.

EDIT2 : Ich möchte auch nicht in der GUI irgendwelche SQL Befehle eingeben können. Eigentlich suche ich nur eine Möglichkeit Daten lokal abzuspeichern die bei Bedarf aktualisiert werden.
 
Zuletzt bearbeitet:

turtle

Top Contributor
Dabei können die Zeilen erweitert werden und die Spalten auch
Das verstehe ich nicht???:L

Normalerweise ist die Anzahl der Spalten einer Tabelle in einem RDBMS konstant, sprich festgelegt. Nehmen wir als Beispiel die Tabelle Buch. Diese besteht aus den Spalten BuchID,Autor,Verlag,Verlagsjahr,Titel,Datum.
Nun kannst du Datensätze in die Tabelle einfügen, indem du ein SQL-Kommando an die DB sendest
Code:
insert into Buch(BuchID,Autor,Verlag,Verlagsjahr,Titel,Datum) values (12,'Galileo Galilei', 'Inquisition International', 1640, 'Eppur si muove', 1641)
Die Anzahl der Zeilen ist dabei ziemlich unwichtig und hat höchstens Auswirkungen wenn wir hier über mehrere Millionen reden. Aber im Bereich von 10-1000 ist das nicht relevant. Ich tendiere immer zu einer DB-Lösung weil du so sehr flexibel bist und notfalls auf eine völlig andere DB wechseln kannst ohne deinen Code ändern zu müssen.

Aber du kannst nicht so einfach die STRUKTUR der Tabelle ändern und weitere Spalten hinzufügen. Denn unter anderem müsstest du ja für alle bereits existierenden Datensätze festlegen, welche Werte in der neuen Spalte stehen sollen.

Also solltest du als Erstes die Tabellenstruktur(en) festlegen, die du benötigst.
Tabelle wird außerhalb der jar gelagert
Nun, das wird auch mit einem RDBMS so sein. Aber es gibt hinreichende Möglichkeiten die DB so zu schützen, das du nicht unbeabsichtigst Änderungen machen kannst.
 

DefconDev

Bekanntes Mitglied
Das verstehe ich nicht???:L

Hallo Turtle,

der Auszug bezog sich auf die ods Tabellen also nicht auf eine Datenbank. Da gibt es nur so viele Spalten und Zeilen wie beschrieben worden sind.


Ich habe mir jetzt Access angeschaut, und ich glaube ich werde das mit Access bewerkstelligen, weil es einfach viel mehr TUT gibt als es die für OPenOffice (odb) existieren. Ansprechen geht wohl auch ziemlich schnell und mit wenig Aufwand. Ich muss halt vorher schon eine Datenbank anlegen mit all den Datensätzen aus meiner alten Tabelle. Und mit Acess kann ich "schnell" eine aufsetzen.

Die Frage die ich mir nun Stelle, wenn ich das Programm auf nen anderen Rechner laufen lassen ohne Access, inwiefern das Programm noch Zugriff hat auf die Datenbank?
 
Zuletzt bearbeitet:

turtle

Top Contributor
Von Access rate ich ab, denn u.a. ist die DBC-ODBC Bridge (sun.jdbc.odbc.JdbcOdbcDriver) im neuesten Java entfernt worden und du benötigst einen entsprechenden JDBC-Treiber.

Und, abseits von Access, sind eigentlich die meisten RDBMS ziemlich gleich, vergleichbar und gut einsetzbar. Da braucht es eigentlich keine Tut speziell für deine DB. Ansonsten kannst du hier im Forum ja gerne fragen.

Beispielsweise solltest du mal versuchen aus der odb-DB die HSQLDB zu extrahieren und mit einem SQL-Tool zu betrachten. Genau diese Struktur benötigst du anscheinend in deiner eigenen HSQLDB-Variante.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M suche umfassendes Tutorial von Scenebuilder Bücher, Tutorials und Links 1
Dessischment Suche ein JOGL Buch Bücher, Tutorials und Links 9
OnDemand Suche Buch für Clean Code Bücher, Tutorials und Links 11
D Suche Bücher für allgemeine Softwareentwicklung Bücher, Tutorials und Links 15
K Suche Beispiele Rekursion und dynamische Programmierung Bücher, Tutorials und Links 1
T Suche: Einführung in Apache Solr Bücher, Tutorials und Links 3
P Suche Buch / Lernmaterial für Fortgeschrittene Bücher, Tutorials und Links 10
A Suche LaTeX Tutorials, PDFs oder anderen Lehrstoff Bücher, Tutorials und Links 4
W Suche Java einsteiger Buch und habe eine Frage zu einer Mathe Software. Bücher, Tutorials und Links 8
M Suche Tutorials für Client/Server und anderes Netzwerkbezogenes Bücher, Tutorials und Links 2
M Suche Tutorial für Sound erstellung in JAVA Bücher, Tutorials und Links 3
V Suche gute Bücher über Informatik insbesondere Java Bücher, Tutorials und Links 1
X Suche Aufgaben-Buch, Tutorials und ähnliches Bücher, Tutorials und Links 2
S Suche Java Herausforderungen Bücher, Tutorials und Links 5
F Suche gutes Buch oder Tut zu Java Spieleprogrammierung Bücher, Tutorials und Links 3
L Suche Bücher auf Bachelor-Niveau für: ... Bücher, Tutorials und Links 6
F Suche Buch zur Awt und Swing Programmierung für fortgeschrittene :) Bücher, Tutorials und Links 7
tuttle64 Suche Buchempfehlungen zu Java Sicherheit Bücher, Tutorials und Links 2
P Suche Java Übungsaufgaben zu Datenstrukturen wie Listen etc Bücher, Tutorials und Links 5
T Suche Video Tuts zu Ubuntu!! Bücher, Tutorials und Links 3
S Suche gutes Java-Buch für fortgeschrittenere Themen Bücher, Tutorials und Links 4
P Suche Einstieg in Jbuilder 2008 R2 Bücher, Tutorials und Links 13
N [Suche] Buch Empfehlung für JUnit Bücher, Tutorials und Links 4
W Suche Buchempfehlung für SWING/AWT Bücher, Tutorials und Links 7
S [Suche]LWJGL OpenCL Tutorial Bücher, Tutorials und Links 4
M Suche best. Foren-Beitrag... Bücher, Tutorials und Links 9
M Suche J2EE Buch Bücher, Tutorials und Links 4
B [SUCHE] Buch oder Tutorial für "Herangehensweisen" Bücher, Tutorials und Links 3
B [Suche] Review Tools Bücher, Tutorials und Links 4
B [SUCHE] Gutes Buch für nächsten Level Bücher, Tutorials und Links 3
J Suche gutes junit Buch Bücher, Tutorials und Links 5
M Suche Buchergänzung zu "Servlets & JSP von Kopf bis Fuß" Bücher, Tutorials und Links 16
Y Suche ein MVC Tuturial Bücher, Tutorials und Links 2
G Suche Buchempfehlungen Bücher, Tutorials und Links 4
S Suche Java-Applet Buch Bücher, Tutorials und Links 2
F Suche spezielles Buch Bücher, Tutorials und Links 10
N [Suche] Anleitung zur Erstellung einer Webanwendung Bücher, Tutorials und Links 3
T Suche Buch: detaillierte Java-Zusammenfassung ohne viel Praxis oder Erklärungen Bücher, Tutorials und Links 3
R Suche 2d Bilder Bücher, Tutorials und Links 4
Wepster Suche weiterführende Bücher Bücher, Tutorials und Links 4
V Suche Java (6) Buch Bücher, Tutorials und Links 7
GambaJo Suche gebraucht: NetBeans Platform 6 RCP (von Heiko Böck) Bücher, Tutorials und Links 3
G Suche Buch zur rcp Entwicklung Bücher, Tutorials und Links 3
L Suche Java-Buch für "Anfänger" Bücher, Tutorials und Links 4
T Suche Buch zur Java Persistence API unter Java SE Bücher, Tutorials und Links 2
M Suche gutes Eclipse Plug-In Buch Bücher, Tutorials und Links 2
M Suche ein besonderes Tut Bücher, Tutorials und Links 2
G Suche Buch zu Design Patterns vornehmlich "visitor patt Bücher, Tutorials und Links 16
T [Suche] Tutorial zu Time Scheduler in Websphere Bücher, Tutorials und Links 5
S [Suche] Java Buch über OOP und Netzwerk bzw. Datenbank Bücher, Tutorials und Links 4
E Suche Tutorial/Buch über guten Stil bei GUI-Programmierung Bücher, Tutorials und Links 7
A Suche Literatur für professionelle Internationalisierung. Bücher, Tutorials und Links 2
W Source-Code-Suche Bücher, Tutorials und Links 4
F Suche buch für eine größere Anwendung Bücher, Tutorials und Links 7
N Suche: FTP Tutorial Bücher, Tutorials und Links 19
K (suche) hilfeprogramm für eclipse Bücher, Tutorials und Links 3
A API/Doc Suche leicht gemacht Bücher, Tutorials und Links 5
K Suche gutes Java-Magazin Bücher, Tutorials und Links 5
D Suche Buch über Schichtentrennung (daobase und co) Bücher, Tutorials und Links 9
J Suche Rekursions Ubuengen/Aufgaben Bücher, Tutorials und Links 3
P [SUCHE] Buch zu Planung und Konzeption Bücher, Tutorials und Links 3
rambozola suche link zu gegenüberstellung der strukturierung von daten Bücher, Tutorials und Links 2
T Suche Abschlussprojekt für Anfängerkurs Bücher, Tutorials und Links 12
D Suche Buch Java und Pc Peripherie Bücher, Tutorials und Links 4
K Suche Bücher: Hibernate, JSF, Tiles, Struts Bücher, Tutorials und Links 4
8 Suche Bücher zu SWT Bücher, Tutorials und Links 3
V Suche Java Buch das an Anfängerbücher anschließt Bücher, Tutorials und Links 5
J suche bestes Java-Buch für Neulinge mit Übungen-Lösunge Bücher, Tutorials und Links 9
T Suche Bücher zu STRUTS und J2EE Bücher, Tutorials und Links 2
P Suche Buch zum Thema JavaBeans Bücher, Tutorials und Links 17
B [Suche] Tutorial zu HttpUnit Bücher, Tutorials und Links 5
P Suche Übungsaufgaben. Bücher, Tutorials und Links 2
V Suche Java Buch zum Schritt für Schritt lernen Bücher, Tutorials und Links 13
G Suche Buch zu JBoss Bücher, Tutorials und Links 5
B Suche gutes XMLBuch Bücher, Tutorials und Links 2
K Suche Java-Bücher für Fortgeschrittene Bücher, Tutorials und Links 5
E Suche Bücher über Java Klassen Bücher, Tutorials und Links 4
B [Suche] Alles über Java Web Start Bücher, Tutorials und Links 1
B [SUCHE] Buch über Design Patterns Bücher, Tutorials und Links 5
H Suche Tutorials,Links oder Buchtipps zu Struts & JSP Bücher, Tutorials und Links 3
K Cooles Java Tutorial, voll hilfreich Bücher, Tutorials und Links 3
M Einsteigerbuch / Tutorial für Java am PC + Android + Eclipse Bücher, Tutorials und Links 11
M JUnit-Buch oder Tutorial Bücher, Tutorials und Links 5
J [Maven] ZIP Deployment Tutorial Bücher, Tutorials und Links 0
J LWJGL 3.1.0 Tutorial mit GLFW & OpenGL Bücher, Tutorials und Links 6
4 Literatur/Tutorial fuer Webprogrammierung Bücher, Tutorials und Links 10
J Maven Tutorial Bücher, Tutorials und Links 0
Viktim Java3D Tutorial Bücher, Tutorials und Links 4
M ausführliche Doku/Tutorial/Buch zu Java Mission Control Bücher, Tutorials und Links 0
J JavaFX Tutorial Bücher, Tutorials und Links 2
K Tutorial Patente Bücher, Tutorials und Links 0
K Tutorial zum AUSDRUCKEN Bücher, Tutorials und Links 5
S Java EE 6 Tutorial Bücher, Tutorials und Links 2
E Fullscreen / Vollbild Tutorial Bücher, Tutorials und Links 1
S Völliger Neuling sucht Tutorial... Bücher, Tutorials und Links 13
Y CSS Tutorial / Buch Bücher, Tutorials und Links 3
P MYSQL-Tutorial gesucht Bücher, Tutorials und Links 5
T JEE: Überblick, Einführung, Kochbuch, Tutorial, ... Bücher, Tutorials und Links 13
S bestes Tutorial zum lernen von Java Bücher, Tutorials und Links 2
M "Java Lernen" mit welchen Buch/Tutorial? Bücher, Tutorials und Links 3

Ähnliche Java Themen


Oben