Tabellenbeziehungsdiagramm aus vorhandenem Schema (SQL Server) generieren [geschlossen]


199

Gibt es eine Möglichkeit, ein Diagramm zu erstellen, das vorhandene Tabellen und ihre Beziehungen bei einer Verbindung zu einer Datenbank zeigt?

Dies gilt für SQL Server 2008 Express Edition.


Ein kostenloses Tool namens SchemaSpy kann dies wie ein Zauber tun. Benötigt aber ein wenig Setup. Ich habe den Schritt hier detailliert beschrieben: blog.kmonsoor.com/generate-er-diagram-from-sql-database
kmonsoor

Schön: 60 DB Reverse Engineering Tools (siehe Filter links) - dbmstools.com/categories/database-diagram-tools/sqlserver
George Birbilis

Antworten:


160

Ja, Sie können SQL Server 2008 selbst verwenden, müssen jedoch SQL Server Management Studio Express installieren (falls nicht installiert). Klicken Sie mit der rechten Maustaste auf Datenbankdiagramme und erstellen Sie ein neues Diagramm. Wählen Sie die vorhandenen Tabellen aus und wenn Sie die Referenzen in Ihren Tabellen richtig angegeben haben. Sie können das vollständige Diagramm der ausgewählten Tabellen sehen. Weitere Informationen finden Sie unter Erste Schritte mit SQL Server-Datenbankdiagrammen


2
Wie kann man das mit SQL Server Compact 3.5 machen?
Scott Anderson

Man sollte in der Lage sein, alle vorhandenen Beziehungen zu sehen, sobald man alle erforderlichen Tabellen hinzugefügt hat.
Vishwas SL

53

Probieren Sie DBVis aus - Download unter https://www.dbvis.com/download - es gibt eine Pro-Version (nicht erforderlich) und eine offene Version, die ausreichen sollte.

Alles was Sie tun müssen, ist den richtigen JDBC - Datenbanktreiber für SQL Server zu erhalten. Das Tool zeigt Tabellen und Referenzen orthogonal, hierarchisch, in einem Kreis an ;-) usw., indem Sie nur eine einzige Taste drücken. Ich benutze die kostenlose Version seit Jahren.


1
Dies war sehr einfach einzurichten und erzeugte ein viel besser lesbares Diagramm als die SQL Server-Tools. +1
Davidtbernal

Sehr einfach einzurichten, wenn Sie bereits JDBC ausführen. Ansonsten möglicherweise insgesamt zu vertrauter Konfiguration zum Teufel .
Ruffin

+ ∞ dafür. Lebensretter!
Olayinka

1
Versucht dies im Juli 2018, es wirkt immer noch Wunder und es ist immer noch kostenlos! +1
Andrea Scarcella

Funktioniert gut, wenn Sie die richtigen Fremdschlüsselbeziehungen haben.
Phord


8

Für SQL-Anweisungen können Sie versuchen, Schneeflocken umzukehren. Sie können sich bei sourceforge oder auf der Demo-Site unter http://snowflakejoins.com/ anmelden .


Erledigt die Aufgabe nicht (Visualisierung des Datenbankschemas), ist aber trotzdem ziemlich cool. Ich wünschte, es gäbe so etwas, um aus einer Textbeschreibung ein ordentliches Diagramm eines Computernetzwerks
Ivan

4

Warum verwenden Sie nicht einfach die in SQL Server integrierte Datenbankdiagrammfunktion?


6
Es ist nicht immer verfügbar. Einige Versionen von SSMS und SQL lassen dies aufgrund der Lizenzierung nicht zu.
Piotr Kula

Oder Sie können, Sie wissen, auf GNU / LInux oder Macos tatsächlich ohne Lizenz sein, nur mit Verbindungsdaten.
Helvete

2

Visio Professional verfügt über eine Datenbank-Reverse-Engineering-Funktion, wenn Sie ein Datenbankdiagramm erstellen. Es ist nicht kostenlos, aber in den meisten Unternehmen allgegenwärtig und sollte ziemlich leicht zu bekommen sein.

Beachten Sie, dass Visio 2003 für Reverse Engineering nicht gut mit SQL2005 oder SQL2008 funktioniert - Sie müssen 2007 erhalten.


7
Diese Funktion wurde leider in Visio 2013 entfernt.
Kjell-Åke Gafvelin


2

SchemaCrawler für SQL Server kann mithilfe von GraphViz Datenbankdiagramme erstellen. Fremdschlüsselbeziehungen werden angezeigt (und können mithilfe von Namenskonventionen sogar abgeleitet werden), und Tabellen und Spalten können mithilfe regulärer Ausdrücke ausgeschlossen werden.


1
"Fremdschlüsselbeziehungen werden unter Verwendung von Namenskonventionen abgeleitet" - für die meisten realen Geschäftsfälle völlig unanwendbar.
Ivan

2
Sie wären überrascht, wie oft dies benötigt wird.
Phord

0

MySQL WorkBench ist eine kostenlose Software, die von Oracle entwickelt wurde. Sie können eine SQL-Datei importieren oder eine Datenbank angeben und ein SQL-Diagramm erstellen, das Sie verschieben können, um es optisch ansprechender zu gestalten. Es läuft unter GNU / Linux und Windows und ist kostenlos und sieht professionell aus.


Es scheint keine anderen DBMS als MySQL mehr zu unterstützen. Auch das automatische Layout des Diagramms ist schrecklich.
Ivan

Das automatische Layout stapelt einfach alles übereinander. Sie müssen dann jede Tabelle an die entsprechende Position ziehen. Es mag schrecklich sein, aber ich bezweifle, dass ein Algorithmus klug genug wäre, um alles ordentlich zu bestellen. Was die SQL-Unterstützung betrifft, verwende ich sie mit H2-Serverabfragen und sie funktioniert. Ich denke, sie unterstützen die meisten SQL-92-kompatiblen SQL-Dateien. Wenn Ihr Code nicht mit SQL-92 übereinstimmt, ist dies möglicherweise eine gute Gelegenheit, dies zu überprüfen.
Dendini

Die Inkompatibilitäten liegen überall, von sehr grundlegenden Dingen wie der Verwendung von Anführungszeichen / Klammern bis zu großen Unterschieden in der DDL (Tabellen / Schlüssel / Einschränkungen / Indizes-Definitionssprache) und grundlegenden Unterschieden in Typen (wie der Verwendung eines separaten Typs für Unicode-Zeichenfolgen).
Ivan
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.