Zugriff von Java auf YoungDB-Datenbankdatei

In der elften Jahrgangsstufe (Bayern, NTG, Informatik) soll ein größeres Projekt durchgeführt werden, in dem auf eine Datenbank zugegriffen wird. Damit man dafür auch YoungDB verwenden kann, habe ich zwei Klassen geschrieben, mit denen man von Java aus auf die .ydb Dateien kommt. Bezüglich der Klassen- und Methodenbezeichnern habe ich mich recht genau an die ISB-Handreichung „Informatik am Naturwissenschaftlich-technologischen Gymnasium, Jahrgangsstufe 11“ gehalten.

Insgesamt bestehen die Zugriffsklassen aus zwei Java-Dateien, die man einfach in das BlueJ-Projektverzeichnis ziehen kann. Falls noch nicht im System integriert, muss man sich noch die Java-Bibliothek derby.jar, beispielsweise auf der Apache DB-Seite herunterladen. Diese befindet sich in der Zip-Datei im Download-Bereich. Es reicht aus, wenn man sich lediglich die Library-Version, beispielsweise db-derby-10.11.1.1-lib.zip herunterlädt, öffnet, und sich die Datei derby.jar irgendwo hinlegt, so dass man sie von BlueJ aus unter Werkzeuge->Einstellungen->Bibliotheken hinzufügen kann.

Download

Ein fertiges Beispielprojekt kann [hier] heruntergeladen werden.

Die beiden Javaklassen DATENBANKZUGRUFF und ERGEBNISTABELLE sind in [dieser Zip-Datei] erhältlich.

Hinweise

  • Die Klassen sind höchst rudimentär und haben auch noch diverse Bugs.
  • SQL-Befehle, die die Datenbank- bzw. Tabellenstrutur manipulieren (beispielsweise CREATE TABLE oder ALTER TABLE), dürfen nicht durchgeführt werden. DELETE, UPDATE und INSERT funktionieren, da sie die Tabellenstruktur nicht ändern.
  • Sollte man mit der Methode AnweisungAbsetzen(SQLBefehl) arbeiten, so muss die Datenbank mit der Methode VerbindungSchließen() auch irgendwann einmal geschlossen werden, da ansonsten die letzten Änderungen nicht gesichert werden.
  • Die Verbindungsklassen sind nicht auf effizienz ausgelegt. Es geht nur darum zu zeigen, wie prinzipiell eine Datenbank von einem Java-Projekt aus angesteuert werden kann.

Zum Urheberrecht.

Die beiden Klassen DATENBANKZUGRIFF und ERGEBNISTABELLE sind Open-Source. Jeder kann sie nach belieben verändern, kopieren und weitergeben. Dafür übernehme ich aber auch keine Haftung bzw. Gewährleistung. Die beiden Klassen sind eh in einem recht rudimentären Zustand. Wenn sich jemand darüber macht und sie verbessert, würde ich mich über eine Zusendung freuen.