对于我的客户,我正在记录一个包含几个表和一些查询的现有数据库。
对于表格,我使用E-R Diagram来显示表格和关系。我是用DIA Diagram Editor做的。
如何描述和可视化查询?有没有某种UML对象可以做到这一点?
到目前为止,我已经创建了一个包含查询名称及其功能描述的表,以及查询本身检索的数据的示例屏幕截图。我在Word中这样做 我不喜欢这项工作的结果,还有更专业的东西吗?
我不会安装新软件只知道数据库设计师必须完成这项任务。
编辑1 正如@Serg建议的那样,我可以使用视图并将视图作为实体进行绘制。
如果我理解的话:
客户需要的是了解数据来自的每个查询。
编辑2 我正在做类似以下的事情:
其中
driver_tabella_utenti是一个表
driver_imp_causali_preparazione是一个QUERY
driver_query_riepilogo_prsp是一个QUERY
我认为这不是麻烦的做法!我如何像实体和关系一样直观地设计SQL查询?
答案 0 :(得分:1)
我根据规格看到2个选项。这仅仅基于字面上的规范,而不是基于网络的任何其他研究。
我在规范
中找到了另一个解决方案您可以使用BehavioralFeature(例如Operation)来定义某些 SQL可用(它可能是某个暴露此操作的类)然后您可以定义一个描述OpaqueBehavior的方法(方法) )包含body(SQL语句)和语言(' SQL')。
由于规范未提供有关表示法的任何信息,您可以指定它将方法表示为对象(这是OpaqueBehavior的特定实例)或使用注释。在这两种情况下,它都应该链接到描述SQL语句提供的行为的相应对象(例如,活动)。
参见UML Sepcification的13.2.3.3。以下是描述该区域的图表。
进一步研究后编辑: UML规范在第16.2节(作为OpaqueAction)中逐字描述了您的情况。第16.2.5.1节中的示例图16.8正是我所描述的第三种可能答案。
但是请注意(正如评论中已经提到的)UML并不总是最合适的解决方案。虽然我强烈建议使用UML对系统进行建模,但SQL代码本身应该是应该与UML图一起创建的文本文档的一部分。它将受益于更清晰,搜索的可能性,复制粘贴代码的可能性等。此外,如果您的查询超过2-3短线,甚至很难注意到它仍然是UML图的一部分。 / p>