Database Exporter: Database Structure and Naming Analyzer

Mit dem Database Exporter 1.0 kann man die Struktur und die Namensgebung seiner Datenbank (mitsamt aller Tabellen und Feldern) analysieren.

Dabei reicht es, die Zugangsdaten (Host, Benutzername, Password) anzugeben, und man kann eine komplette Datenbank (hier: DATABASENAME) in ein Verzeichnis (hier: xml) zu exportieren.

$dbexporter->exportDbStructureToXML('DATABASENAME', 'xml');

Während des Schemaexports wird auch die Struktur analysiert und nach einigen Gesichtspunkten bewertet:

  • Fremdschlüsselabhängigkeiten werden automatisch gefunden, wenn Fremdschlüssel einmalig heißen; d.h. beispielsweise in der Tabelle postings heißt es user_id und nicht poster_id, wenn damit eigentlich auf users.user_id verwiesen wird (id wie in ROR wird nicht verwendet)
  • gefundene Abhängigkeiten werden zudem mit ihren Typen verglichen, wobei davon ausgegangen wird, dass der Typ im Hauptschlüssel (Primary Key) der richtige ist

XML/DTD Validator Version 1.0

Aus Zweckmäßigkeit habe ich mir einen kleinen XML/DTD-Generator und Validator gebaut.

  • Laden einer XML-Datei als URL
  • optionales Laden einer DTD-Datei als URL
  • alternativ: aus geladener XML-Datei eine DTD generieren lassen
  • entweder aus der geladenen DTD oder aus der DTD im XML-Header das XML-Dokument validieren

Da das Tool nur die URLs zu den Dateien speichert, kann man auch auch während der Laufzeit die Dateien bearbeiten und erneut validieren lassen.
Das Tool ist komplett über GUI steuerbar, es sind keine Konsoleneingaben erforderlich (und afaik auch nicht möglich).

Für den Part des DTD-Generators (den ich anpassen musste, um ihn von der GUI aus zu steuern und Fehlerreports in die GUI zu leiten): xmlBlueprint: DTD Generator

Zum Download des XML/DTD Validator Version 1.0