Générer un diagramme de relation de table à partir d'un schéma existant (SQL Server) [fermé]

199

Existe-t-il un moyen de produire un diagramme montrant les tables existantes et leurs relations en se connectant à une base de données?

C'est pour SQL Server 2008 Express Edition.

Nick Zalutskiy
la source
un outil gratuit nommé SchemaSpy peut le faire comme un charme. Mais, a besoin d'un peu de configuration. J'ai détaillé l'étape ici: blog.kmonsoor.com/generate-er-diagram-from-sql-database
kmonsoor
sympa: 60 outils de reverse engineering DB (voir filtre à gauche) - dbmstools.com/categories/database-diagram-tools/sqlserver
George Birbilis

Réponses:

160

Oui, vous pouvez utiliser SQL Server 2008 lui-même, mais vous devez installer SQL Server Management Studio Express (s'il n'est pas installé). Faites un clic droit sur les diagrammes de base de données et créez un nouveau diagramme. Sélectionnez les tables existantes et si vous avez correctement spécifié les références dans vos tables. Vous pourrez voir le schéma complet des tableaux sélectionnés. Pour plus d'informations, voir Prise en main des diagrammes de base de données SQL Server

Gripsoft
la source
2
Est-il possible de le faire avec SQL Server Compact 3.5?
Scott Anderson
Il faut également pouvoir voir toutes les relations existantes une fois que vous avez ajouté toutes les tables nécessaires.
Vishwas SL
53

Essayez DBVis - téléchargement sur https://www.dbvis.com/download - il existe une version pro (non nécessaire) et une version ouverte qui devraient suffire.

Tout ce que vous avez à faire est d'obtenir le bon pilote de base de données JDBC pour SQL Server, l'outil affiche les tables et les références orthogonales, hiérarchiques, dans un cercle ;-) etc. simplement en appuyant sur un seul bouton. J'utilise la version gratuite depuis des années maintenant.

Georgi
la source
1
Cela a été très facile à configurer et a produit un diagramme beaucoup plus lisible que les outils SQL Server. +1
davidtbernal
Très facile à configurer si vous utilisez déjà JDBC. Sinon, potentiellement dans l' ensemble à la configuration familière diable .
ruffin
+ ∞ pour cela. épargnant de la vie!
Olayinka
1
J'ai essayé cela en juillet 2018, cela fait toujours des merveilles et c'est toujours gratuit! +1
Andrea Scarcella
Fonctionne bien si vous avez des relations de clé étrangère appropriées.
phord
8

Pour les instructions SQL, vous pouvez essayer les flocons de neige inversés. Vous pouvez vous inscrire sur sourceforge ou sur le site de démonstration à http://snowflakejoins.com/ .

Pascal
la source
Ne fait pas la tâche (visualisation du schéma de la base de données) mais est quand même plutôt cool. J'aimerais qu'il y ait quelque chose comme ça pour générer un diagramme ordonné d'un réseau informatique à partir d'une description textuelle ...
Ivan
4

Pourquoi n'utilisez-vous pas simplement la fonctionnalité de diagramme de base de données intégrée à SQL Server?

Vendeurs Mitchel
la source
6
Il n'est pas toujours disponible .. certaines versions de SSMS et SQL ne le permettent pas en raison de la licence.
Piotr Kula
Ou vous pouvez, vous savez être sur GNU / LInux ou MacOS sans aucune licence, juste avec des informations de connexion.
helvete
2

Visio Professional dispose d'une fonctionnalité de rétro-ingénierie de base de données si vous créez un diagramme de base de données. Ce n'est pas gratuit, mais il est assez omniprésent dans la plupart des entreprises et devrait être assez facile à obtenir.

Notez que Visio 2003 ne fonctionne pas bien avec SQL2005 ou SQL2008 pour la rétro-ingénierie - vous devrez obtenir 2007.

ConcernedOfTunbridgeWells
la source
7
Cette fonctionnalité a malheureusement été supprimée dans Visio 2013.
Kjell-Åke Gafvelin
2

SchemaCrawler pour SQL Server peut générer des diagrammes de base de données, à l'aide de GraphViz. Les relations de clés étrangères sont affichées (et peuvent même être déduites, à l'aide de conventions de dénomination), et les tables et les colonnes peuvent être exclues à l'aide d'expressions régulières.

Sualeh Fatehi
la source
1
«Les relations avec les clés étrangères sont déduites à l'aide de conventions de dénomination» - totalement inapplicable dans la plupart des cas réels.
Ivan
2
Vous seriez surpris de la fréquence à laquelle cela est nécessaire.
phord
0

MySQL WorkBench est un logiciel gratuit développé par Oracle, vous pouvez importer un fichier SQL ou spécifier une base de données et il générera un diagramme SQL que vous pourrez déplacer pour le rendre plus attrayant visuellement. Il fonctionne sur GNU / Linux et Windows et il est gratuit et a un aspect professionnel.

dendini
la source
Il ne semble plus supporter les SGBD autres que MySQL. De plus, la disposition automatique de son diagramme est affreuse.
Ivan
la mise en page automatique empile simplement tout au-dessus d'une autre, vous devez ensuite faire glisser chaque table à la position appropriée, cela pourrait être terrible, mais je doute que tout algorithme soit assez intelligent pour tout ordonner correctement. En ce qui concerne le support SQL, je l'utilise avec les requêtes du serveur H2 et cela fonctionne, je pense qu'ils prennent en charge la plupart des SQL conformes à SQL-92, donc si votre code n'est pas conforme à SQL-92, cela pourrait être une bonne occasion de le vérifier.
dendini
Les incompatibilités se trouvent partout, des choses très basiques comme l'utilisation des guillemets / crochets aux énormes différences dans DDL (langage de définition des tables / clés / contraintes / indices) et des différences fondamentales dans les types (comme l'utilisation d'un type distinct pour les chaînes Unicode).
Ivan