Generar diagrama de relación de tabla a partir del esquema existente (SQL Server) [cerrado]

199

¿Hay alguna manera de producir un diagrama que muestre las tablas existentes y sus relaciones dada una conexión a una base de datos?

Esto es para SQL Server 2008 Express Edition.

Nick Zalutskiy
fuente
una herramienta gratuita llamada SchemaSpy puede hacer eso como encanto. Pero, necesita un poco de configuración. He detallado el paso aquí: blog.kmonsoor.com/generate-er-diagram-from-sql-database
kmonsoor
uno agradable: 60 herramientas de ingeniería inversa DB (ver filtro a la izquierda) - dbmstools.com/categories/database-diagram-tools/sqlserver
George Birbilis

Respuestas:

160

Sí, puede usar SQL Server 2008 en sí, pero necesita instalar SQL Server Management Studio Express (si no está instalado). Simplemente haga clic derecho en Diagramas de base de datos y cree un nuevo diagrama. Seleccione las tablas existentes y si ha especificado las referencias en sus tablas correctamente. Podrá ver el diagrama completo de las tablas seleccionadas. Para obtener más información, consulte Introducción a los diagramas de la base de datos de SQL Server.

Gripsoft
fuente
2
¿Alguna forma de hacer esto con SQL Server Compact 3.5?
Scott Anderson
Uno debería poder ver todas las relaciones existentes también una vez que agregue todas las tablas necesarias.
Vishwas SL
53

Pruebe DBVis - descargue en https://www.dbvis.com/download - hay una versión pro (no necesaria) y una versión abierta que debería ser suficiente.

Todo lo que tiene que hacer es obtener el JDBC correcto - controlador de base de datos para SQL Server, la herramienta muestra tablas y referencias ortogonales, jerárquicas, en círculo ;-) etc. con solo presionar un botón. Yo uso la versión gratuita desde hace años.

Georgi
fuente
1
Esto fue muy fácil de configurar y produjo un diagrama mucho más legible que las herramientas de SQL Server. +1
davidtbernal
Muy fácil de configurar si ya está ejecutando JDBC. De lo contrario, potencialmente en todos los heck de configuración familiar .
ruffin
+ ∞ para esto. salvavidas!
Olayinka
1
Probé esto en julio de 2018, ¡todavía funciona de maravilla y sigue siendo gratis! +1
Andrea Scarcella
Funciona bien si tiene relaciones de clave externa adecuadas.
phord
8

Para las instrucciones SQL, puede probar los copos de nieve inversos. Puede unirse a sourceforge o al sitio de demostración en http://snowflakejoins.com/ .

Pascal
fuente
No hace la tarea (visualizar el esquema de la base de datos) pero sigue siendo bastante bueno. Desearía que hubiera algo así para generar un diagrama ordenado de una red informática a partir de una descripción textual ...
Ivan
4

¿Por qué no usa la funcionalidad de diagrama de base de datos integrada en SQL Server?

Mitchel Sellers
fuente
66
No siempre está disponible. Algunas versiones de SSMS y SQL no permiten debido a licencias.
Piotr Kula
O bien, puede estar en GNU / LInux o Macos en realidad sin ninguna licencia, solo con credenciales de conexión.
helvete
2

Visio Professional tiene una función de ingeniería inversa de base de datos si crea un diagrama de base de datos. No es gratuito, pero es bastante ubicuo en la mayoría de las empresas y debería ser bastante fácil de conseguir.

Tenga en cuenta que Visio 2003 no funciona bien con SQL2005 o SQL2008 para la ingeniería inversa; deberá obtener 2007.

Preocupado por TunbridgeWells
fuente
77
Lamentablemente, esta característica se ha eliminado en Visio 2013.
Kjell-Åke Gafvelin
2

SchemaCrawler para SQL Server puede generar diagramas de bases de datos, con la ayuda de GraphViz. Se muestran las relaciones de clave externa (e incluso se pueden inferir, usando convenciones de nomenclatura), y las tablas y columnas se pueden excluir usando expresiones regulares.

Sualeh Fatehi
fuente
1
"Las relaciones de claves externas se infieren, utilizando convenciones de nomenclatura", totalmente inaplicable en la mayoría de los casos comerciales reales.
Ivan
2
Te sorprendería con qué frecuencia se necesita esto.
phord
0

MySQL WorkBench es un software gratuito y está desarrollado por Oracle, puede importar un archivo SQL o especificar una base de datos y generará un diagrama de SQL que puede mover para hacerlo más atractivo visualmente. Se ejecuta en GNU / Linux y Windows y es gratis y tiene un aspecto profesional.

dendini
fuente
Parece que ya no es compatible con DBMS que no sea MySQL. Además, su diagrama de diseño automático es terrible.
Ivan
el diseño automático simplemente apila todo encima de otro, luego debe arrastrar cada tabla a la posición adecuada, puede ser terrible, pero dudo que algún algoritmo sea lo suficientemente inteligente como para ordenar todo de manera ordenada. En cuanto al soporte de SQL, lo uso con consultas del servidor H2 y funciona, creo que son compatibles con la mayoría de los SQL que cumplen con SQL-92, por lo que si su código no cumple con SQL-92, podría ser una buena ocasión para verificarlo.
dendini
Las incompatibilidades se encuentran en todas partes, desde cosas muy básicas como el uso de comillas / corchetes hasta grandes diferencias en DDL (lenguaje de definición de tablas / claves / restricciones / índices) y diferencias fundamentales en los tipos (como usar un tipo separado para cadenas Unicode).
Ivan