Quick Tipp: Eine Datenbank Struktur verstehen mit Hilfe von schemaspy
Wer kennt ihn nicht, den klassischen Wartungsfall: Man muss etwas für eine Software anpassen, mit der man schon lange nichts mehr oder noch nie zu tun hatte – und blickt auf eine Datenbank mit sehr vielen Tabellen. Eine Dokumentation mag es geben, aber man ist sich nicht sicher, ob diese tatsächlich auf dem neuesten Stand ist.
Was also tun, um einen ersten schnellen Überblick über die Datenstrukturen zu erhalten?
Ein von mir sehr gerne verwendetes Werkzeug ist schemaspy (http://schemaspy.org). Es ist ein Java-basiertes Werkzeug, mit dem man für die meisten JDBC kompatiblen Datenbanksysteme sehr schnell eine Dokumentation des Datenbankschemas erstellen kann. Voraussetzung ist eine Verbindung zur Datenbank.
Eine große Installation (siehe https://schemaspy.readthedocs.io/en/latest/installation.html) ist nicht erforderlich – das Tool besteht aus einem JAR File. Java 8 muss auf dem Rechner installiert sein. Ich empfehle auch die Installation von Graphviz, was für die Erzeugung der grafischen Darstellungen benötigt wird. Ohne die Installation ist bei mir die Generierung immer abgebrochen.
Als ersten Schritt sollte man eine properties Datei mit dem Datenbank Typ und den Verbindungsparametern (Host, Port, Username und Passwort) und ggf. Pfad-Angaben zum benötigten JDBC Treiber erstellen. Das Tool wird mit einem Komandozeilenbefehl gestartet. Das Werkzeug analysiert die Datenbankstruktur und generiert eine HTML-basierte Dokumentation in das lokale Filesystem, die man nachfolgend im Browser anschauen kann. Neben u.a. den tabellarischen Angaben zu den Datenbanktabellen gehören auch grafische Darstellungen der Beziehungen zwischen den Tabellen. So kann man sich „durch die Strukturen klicken“, sieht die jeweiligen Abschnitte grafisch sowie auch alle Definitionen.