我一直在尝试绘制 SQL Server 数据库中表子集的关系图。
我使用以下选项在 MAC 操作系统上运行 sc.sh:
-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
我使用的 graphviz 版本是 2.28.0(如果我使用的版本高于此版本,schemacrawler 和 schemaSpy 都会出错)。
当我运行命令时,我得到了输出 pdf 文件。但它只包含表/节点及其列,没有应该链接 2 个表的关系/边。
我还尝试为数据库中的所有表生成图表,输出再次是所有表/节点及其列的图表,但没有任何关系/边。
我可以运行作为模式爬虫下载一部分的图表示例,并且输出确实显示了关系/边缘。
最后,我可以在 schemaSpy 中生成显示正确关系的图表。我想看看我是否可以在 schemacrawler 中为一组特定的表和列生成图表。
我使用 schemacrawler-12.04.02-main