JDBC-Treiber für PreferenceSQL

JDBC-Treiber für PreferenceSQL

Im Rahmen meiner Bachelor-Arbeit habe ich einen äußerst rudimentären Typ 3 JDBC-Treiber weiterentwickelt, der die Datenbankabfragesprache PreferenceSQL versteht. PreferenceSQL wurde vom Lehrstuhl für Datenbanken und Informationssysteme der Uni Ausgburg entwickelt. Der Treiber wurde in der Nutzung vereinfacht und um DDL- und DML-Anweisungen erweitert. Soweit möglich wurde am Ende das JDBC 2.0 Core-API unterstützt.

Zu Beginn des Projekts hatte musste der Treiber zusammen mit der kompletten PreferenceSQL-Implementierung an den Client ausgeliefert werden. Mittels Java-RMI wurde der JDBC-Treiber in einen (kleinen, leichtgewichtigen) Client- und einen (größeren) Server-Teil aufgetrennt. PreferenceSQL konnte somit (zum einen geschützt und zum anderen leicht zu aktualisieren) zusammen mit dem Server-Teil zentral auf dem Datenbankserver eingerichtet werden. Da nur ein kleiner Teil der JDBC-Methoden implementiert war, wurden nun, soweit möglich, auch die fehlenden Methoden implementiert, um das JDBC 2.0 Core-API bestmöglich zu unterstützen.

Der zweiten Teil des Projekts bestand darin, die Bibliothek von PreferenceSQL um die DDL (CREATE TABLE, ALTER TABLE, DROP TABLE) und DML (INSERT, UPDATE, DELETE) von SQL zu erweitern. Zu Beginn des Projekts wurden ja nur SELECT-Abfragen unterstützt. Zum Lesen und Verarbeiten der SQL-Queries wurden lexikalische Scanner und Parser verwendet, die mit Hilfe des Frameworks JavaCC erstellt wurden. Somit entfiel ab jetzt die Notwendigkeit, für derartige Operationen einen separaten Datenbanktreiber einzusetzen.


(Java, Java-RMI, JavaCC, Oracle, MySQL, PreferenceSQL)