I have been trying to graph the relationships in a subset of tables in a SQL Server db.
I run sc.sh on a MAC OS using the following options:
-server=sqlserver -host=<host> -database=<schema> -user=<user> -password=<password> -infolevel="maximum" -command="graph" -schemas=<schema> -tables="<database>\.<schema>\.TABLE1|<database>\.<schema>\.TABLE2" -grepcolumns=".*\.PRIMARYKEY" -tabletypes=TABLE -outputformat=pdf -outputfile=diagram.pdf
The version of graphviz that I use is 2.28.0 (if I use a version later than this, I get errors in both schemacrawler and schemaSpy).
When I run the command, I get the output pdf file. But it contains only the tables/nodes and their columns, without the relationship/edge that should link the 2 tables.
I also tried generating the graph for all tables in the database, and the output was again a diagram of all the tables/nodes with their columns, but without any relationships/edges.
I can run the diagram example that is part of the schema crawler download, and the output does show the relationships/edges.
Lastly, I can generate diagrams in schemaSpy that show the proper relationships. I want to see if I can generate diagrams in schemacrawler for just a specific set of tables and columns.
I use schemacrawler-12.04.02-main
Thomas, please use SchemaCrawler 12.05.02 or better. The algorithm for detecting weak or implied relationships has been enhanced, and you should now see the edges that you want to see in the graphs.
Sualeh Fatehi, SchemaCrawler