16 Punkte von GN⁺ 2024-03-24 | 1 Kommentare | Auf WhatsApp teilen
  • SQL-Abfrage zum Erzeugen eines SQLite-Datenbankschemas im GraphViz-Format
  • Kann als Datei gespeichert oder an den dot-Befehl weitergeleitet werden, um in PNG/SVG/PDF usw. umgewandelt zu werden
    sqlite3 path/to/database.db -init sqlite-schema-diagram.sql "" > schema.dot dot -Tsvg schema.dot > schema.svg
  • Erfordert SQLite3 3.37.0 oder höher (enthält die Funktion zum Abrufen von table_list)

1 Kommentare

 
GN⁺ 2024-03-24
Hacker-News-Kommentare
  • Der Autor dachte, sein Werk sei zu spezifisch und zu unbedeutend, um auf Hacker News viel Aufmerksamkeit zu bekommen, erhielt aber entgegen den Erwartungen doch Interesse.

    Der Autor glaubte, seine Arbeit würde auf Hacker News keine Beachtung finden, war dann aber überrascht, dass sie tatsächlich Interesse weckte.

  • Als es am Fossil-Repository von SQLite ausprobiert wurde, enthielt das resultierende Diagramm keine Beziehungspfeile. Das Schema von Fossil verwendet grundsätzlich REFERENCES-Klauseln, die auf den Primärschlüssel einer Tabelle zeigen. Der Diagrammgenerator verlangt ausdrücklich angegebene Spaltennamen.

    Beim Test mit dem Fossil-Repository von SQLite fehlten im Diagramm die Pfeile für Beziehungen. Das liegt daran, wie das Fossil-Schema auf Primärschlüssel verweist, und deutet darauf hin, dass der Diagrammgenerator explizite Spaltennamen benötigt.

  • In einem Unternehmen aus der Dotcom-Zeit wurden mit einem Großformatdrucker Poster mit Datenbank-Schemadiagrammen gedruckt und an die Wand gehängt, was für neue Mitarbeiter sehr hilfreich war.

    Früher druckte ein Unternehmen Datenbank-Schemadiagramme mit einem Großformatdrucker aus und hängte sie an die Wand, damit sie neuen Mitarbeitern helfen.

  • Jemand hat ein ähnliches Tool für den Eigengebrauch gebaut: Es nimmt .dot-Dateien als Eingabe, bietet eine einfache UI, lässt Tabellen/Beziehungen für das endgültige Diagramm auswählen, hebt Tabellen hervor, fügt verwandte Tabellen hinzu, ergänzt Tabellen auf dem kürzesten Pfad zwischen zwei Tabellen, weist dem endgültigen Diagramm Farben zu, erzeugt den benötigten Graph-Quelltext und kopiert ihn in die Zwischenablage und lädt dann eine von zwei GraphViz-Seiten zur Anzeige des Graphen.

    Das selbst gebaute Tool verarbeitet .dot-Dateien und erlaubt über eine Benutzeroberfläche die Auswahl von Tabellen und Beziehungen im Diagramm, bietet Farbzuweisung und Optionen zur Anzeige nur wichtiger Felder und kopiert den Graph-Quelltext in die Zwischenablage, damit er auf einer GraphViz-Seite angezeigt werden kann.

  • WWW SQL Designer ist ein Online-Tool für SQL-Diagramme.

    WWW SQL Designer ist ein Tool, mit dem Nutzer online SQL-Diagramme erstellen können.

  • Der Entwickler hat Spaß daran, SQL in sqlite-schema-diagram.sql zu „missbrauchen“; das ist ein Begriff, den er selbst zur Beschreibung seiner Arbeit verwendet.

    Der Entwickler findet es unterhaltsam, SQL in seiner Arbeit zu „missbrauchen“, und verwendet diesen Ausdruck aus seiner eigenen Perspektive.

  • Jemand hat dieses Tool für einen Game-Server entdeckt, der SQLite verwendet, und überlegt, es in die CI-Pipeline aufzunehmen. Die Hauptdatenbank enthält viele Beziehungen, sodass es für andere bei der Arbeit nützlich wäre.

    Für einen Game-Server mit SQLite soll dieses Tool in die CI-Pipeline integriert werden. Wegen der vielen Beziehungen in der Hauptdatenbank dürfte es auch für andere Entwickler nützlich sein.

  • Das Diagramm-Tool scheint weniger Abhängigkeiten als Schemaspy.org zu haben, auch wenn Schemaspy.org für große Datenbanken weiterhin hervorragend ist.

    Das Tool zur Diagrammerstellung scheint weniger Abhängigkeiten als Schemaspy.org zu haben, doch Schemaspy.org eignet sich nach wie vor sehr gut für große Datenbanken.

  • Paracelsus erzeugt Diagramme für mit SQLAlchemy definierte Datenbanken im Markdown- oder dot-Format.

    Paracelsus ist ein Tool, das Diagramme für mit SQLAlchemy definierte Datenbanken im Markdown- oder dot-Format erzeugt.

  • Innerhalb von fünf Minuten nach dem Besuch wurde dieses Tool in eine GitLab-CI-Pipeline integriert.

    Ein Nutzer entdeckte das Tool und integrierte es sehr schnell in eine GitLab-CI-Pipeline.