Die Erkundung einer unbekannten Datenbank mit DatabaseSpy

Softwareentwickler, die an einer neuen App arbeiten, Datenexperten in verschiedenen Unternehmen und sogar Datenbankadministratoren stoßen oft auf unbekannte Datenbanken und benötigen ein Datenbank-Tool, um Tabellen und Beziehungen schnell zu analysieren.

Altova DatabaseSpy ist ein einzigartiges Werkzeug für die Abfrage, das Design und den Vergleich von Datenbanken, das über einen grafischen Datenbank-Editor verfügt. Es ermöglicht Benutzern, die mit einer unbekannten Datenbank arbeiten, Tabellen, Beziehungen und sogar Datentypdefinitionen schnell zu visualisieren, wobei möglicherweise Unterschiede zwischen verschiedenen Datenbanktypen bestehen.

DatabaseSpy unterstützt alle gängigen Datenbanken:

  • Firebird
  • IBM DB2®
  • Informix®
  • Microsoft Access™
  • Microsoft® Azure SQL
  • Microsoft® SQL Server®
  • MySQL®
  • Oracle®
  • PostgreSQL
  • Progress OpenEdge
  • SQLite
  • Sybase®

Chinook ist eine quelloffene Beispieldatenbank, die für SQL Server, Oracle, MySQL, DB2, PostgreSQL, SQLite und weitere Systeme verfügbar ist. Sie implementiert ein Datenmodell für einen digitalen Medienladen. Lassen Sie uns die SQLite-Version mit DatabaseSpy genauer betrachten.

Der Verbindungsassistent von DatabaseSpy stellt schnell eine Verbindung zu SQLite her und fügt die Datenbank einem neuen DatabaseSpy-Projekt hinzu:

Ein DatabaseSpy-Projekt kann Verbindungen zu mehr als einer Datenbank enthalten, selbst wenn es sich um Datenbanken unterschiedlicher Typen handelt. Das Hilfefenster des Online-Browsers ermöglicht es uns, sofort die Liste der Tabellen anzuzeigen und die Anzahl der Zeilen zu ermitteln:

Für komplexere Datenbanken zeigt der Online-Browser auch mehrere Datenbankschemata, Ansichten, Prozeduren, Funktionen usw. an, wie in diesem Beispiel der SQL Server AdventureWorks-Beispieldatenbank:

Wir interessieren uns für die Datenbank des digitalen Musikgeschäfts, da wir ebenfalls eine CSV-Datei mit Metadaten von einer zusätzlichen Sammlung von Mediendateien besitzen, die wir gerne der Datenbank hinzufügen möchten. Die CSV-Datei enthält folgende Felder:

Wir können auf den Plus-Button neben der Tabelle "Tracks" im Fenster des Online-Browsers klicken, oder noch besser, die Tabelle in einem neuen Fenster des Design-Editors öffnen:

Die Tabelle "Track" enthält Schlüssel, die auf andere Tabellen verweisen. Ein Kontextmenü, das durch einen Rechtsklick aufgerufen wird, ermöglicht es uns, die referenzierten Tabellen hinzuzufügen und deren Beziehungen darzustellen, um so eine umfassendere Übersicht im Stil eines Entity-Relationship-Diagramms zu erstellen.

Der Vergleich dieses Diagramms mit unseren neuen Feldern in der CSV-Datei zeigt ein Problem auf. Unsere Daten enthalten separate Felder für den Künstler des Titels und den Künstler des Albums. Dies soll Kompilationen wie Film-Soundtracks und ähnliche Fälle berücksichtigen, bei denen dem Album möglicherweise allgemein ein Künstler wie "Verschiedene Interpreten" zugeschrieben wird, aber wir möchten dennoch den korrekten Musiker für jeden Titel erfassen.

Die aktuelle Tabelle "Tracks" identifiziert nicht für jeden Titel den jeweiligen Musiker, sondern verweist stattdessen auf die Album-ID, die wiederum auf die Tabelle "Artists" verweist, um den Künstler für ein bestimmtes Album anzugeben.

Grafische Bearbeitung von Datenbanktabellen

Kein Problem! Wir können einfach auf das Plus-Symbol in der Tabelle "Track" direkt unterhalb der Spalte "Einheitspreis" klicken, um eine neue Spalte zur Tabelle hinzuzufügen. DatabaseSpy fügt die Spalte mit Standardwerten hinzu:

Zunächst können wir die neue Spalte umbenennen und ihren Datentyp festlegen. Beachten Sie, dass DatabaseSpy hierbei eine praktische Auswahlliste anbietet, mit der wir jeden zulässigen Datentyp für diese Datenbank auswählen können. Die neue Spalte für den Künstler des Titels wird selten verwendet, da sie nur benötigt wird, wenn wir die Künstler-ID aus dem Album überschreiben möchten. Wir können sie einfach als Textdatentyp mit begrenzter Länge belassen, wie beispielsweise die Spalte für den Komponisten.

Beachten Sie das Pluszeichen neben der Spaltenüberschrift "TrackArtist" im obigen Screenshot. DatabaseSpy ändert die Datenbank nicht direkt, während wir das Diagramm bearbeiten. Stattdessen erstellt DatabaseSpy automatisch ein Datenbank-Änderungsskript in einem separaten Fenster.

Dadurch können Benutzer mehrere Änderungen im Design-Editor vornehmen, ohne das Risiko einzugehen, etwas zu beschädigen. Sobald alle Änderungen vorgenommen wurden, können wir entweder das Skript direkt ausführen, das Skript zur Bearbeitung in einem neuen SQL-Fenster öffnen, das Skript in einer Datei speichern oder alle Änderungen verwerfen und das Skript löschen.

Wir öffnen das Skript in einem SQL-Editor-Fenster, um eine Begrenzung für die Länge des Textfelds hinzuzufügen, die der Begrenzung für die Spalte "Composer" entspricht:

Wir können das Skript direkt aus dem Editor-Fenster ausführen und die Datenbank neu laden, um die Änderungen im Design-Editor anzuzeigen.

Der Design-Editor ist eine der vielen praktischen und intuitiven Funktionen, die Ihnen helfen, eine unbekannte Datenbank zu erkunden. Laden Sie eine kostenlose Testversion herunter, um selbst zu erleben, wie DatabaseSpy das Abfragen, Visualisieren, Verwalten, Vergleichen und die Darstellung von Datenbankabfrageergebnissen vereinfacht.