Ami*_*hum 8 database database-design erd
我正在大学里做一个项目,它包括一个MySQL数据库.我根据表列表及其各自的字段设计了数据库.
我应该以什么形式展示这种设计?只是表格和内容列表?在ERD?你如何展示你的设计?
为了澄清 - 无论你回答什么,我不仅要指出你如何呈现你的设计,还要使用哪些工具创建图表/列表/表等.
让我们从你教授的角度来看待这个问题。如果我是他/她:
我需要 ERD。没有它,我就看不到数据库设计的最基本问题之一,即表之间的关系。
我还期待一些基本的用例/要求。你想用这个数据库设计解决什么问题?
我想看看有什么索引,特别是在外键列上。我想查看所有表中的预期行数,以确定是否甚至需要索引。
我想查看列数据类型以确定它们是否满足要求。我想看看哪些列接受 NULL 值,因为如果您不小心,这通常会导致问题。
如果我使用 SQL Server,我可能会在 SSMS 中创建一个图表来显示一些基本的 ERD。也可以使用 Visio。我可能会使用 Visio 创建我的用例,或者使用 Microsoft Word。
ERD是唯一的出路.正如他们所说,一张图片胜过千言万语.
但是不要试图将整个数据库放在一个图表上.除了最微不足道的情况之外,它将为您的受众压倒一切,试图一次性消化整个数据库设计.相反,将图表分解为主题区域,仅描绘每个图表中最相关的表格.例如,销售点系统可能具有库存,销售,会计,客户管理,安全,审计和报告的单独图表.有些表格会出现在多个主题领域 - 这是可以预料的.
就工具而言,没有什么比ErWin更好,但它真的很贵,只适用于Windows.Visio在企业环境中无处不在,但仅在Windows上可用,并且也不是很便宜.Mac提供了一些非常好的图表工具; 他们中的大多数都不是免费的.
Dia是一个体面的,免费的,跨平台的图表工具.不过,它有点古怪; 我没有太大的成功使图表看起来很好,我希望他们看起来.
对于MySQL,我使用fabFORCE dbDesigner并且它也不错,但我确实发现它对多个主题领域的支持在当时有点缺乏 - 也许他们自那以后就改进了它.但它是免费的,适用于Windows和Linux.
对于实际演示,我从这些图表工具创建图像并将它们拉入演示软件(PowerPoint,KeyNote或OpenOffice Impress).这些演示文稿可以导出为PDF并分发给观众; 他们将不再需要PDF查看器来查看以后的信息.