企业硬件库存和计费的数据库设计

时间:2013-08-29 10:40:10

标签: database database-design

我必须为企业开发一个数据库来管理其 pc硬件和软件库存,PC故障和PC分配给用户。

我是数据库设计的初学者*所以我想了解如何从头开始正确建模数据库。

我已经做了一些研究并开始了一些事情,但既然你们都是专家,我希望你能接受它。

详细信息并不重要,我需要知道您将制作哪些表格及其关系。

我已经提供了我想出的ERD截图。请看看。

ER Diagram

到目前为止,我已经做了什么。我知道它的设计可能很差,请记住这对我来说是第一次。

  1. 基本上,我有一个用户列表。
    • 让我们去找一个用户表。
  2. 每个用户可以拥有多台个人电脑(但仅限一个用户使用一台电脑)。
    • 所以,PC表,FK给用户。
  3. PC由MB,CPU,HDD,RAM,GFX卡的设置列表中的许多类型的已识别硬件组成。
    • 这里我为硬类型(cpu,gfx等)
    • 制作了一个类别表
    • 然后制作并建模表格。
    • 最后是一个模式详细信息表,用于存储各种细节,如频率,大小等。
    • 我将这些表链接到一个带有FK的硬件表,以便混合给我一块硬件。 --->我知道必须有一种方法可以更好地/正确/有效地连接表格!
  4. 我希望能够显示从设置列表中给出的PC用户/硬件,并通过其账单跟踪硬件。
    • 所以我制作了一个硬件库存表。我将一个硬件链接到许多硬件库存中的FK,以及它的计费。
  5. 我可以跟踪每台PC的故障/故障。
    • 有一个失败类型表。我通过包含FK到pc_id和failure_type_id的交叉表失败事件将它链接到PC。
    • 然后我将评论保存在一个链接到failure_event的分隔表中。
  6. 就是这样。 我还没有解决软件管理问题。 基本上,它与硬件相同,我有一套不同的软件和列表:

    • 我想知道PC上安装了什么。
    • 我想知道附加到软件股票的账单和许可证。

    感谢您的反馈!

2 个答案:

答案 0 :(得分:1)

我认为有两种选择:

  1. 添加表“software”,“publisher”,“software_category”;添加一个类似于“pc_hardware”的链接表。
  2. 将“硬件”更改为“组件”,并将“软件”添加为组件类别。
  3. 选项1增加了更多的表,但更加明显;使用这种方法管理软件许可证可能会更容易。

    选项2的表格较少,但有点难以理解。根据这种方法,软件许可证可能是一种“产品保修”(但这感觉很麻烦!)

    出于兴趣,您是否曾调查过任何进行资产管理和问题跟踪的开源或COTS产品?我不知道是否有任何可用的产品,但你不能成为第一个想做这类事情的人/企业!

答案 1 :(得分:1)

你们的关系对我来说有点太多了。

以下是检查自己的ERD的方法。使用铅笔和索引卡,记下建议的系统屏幕的屏幕字段和建议的系统报告的报告字段。

这样的事情:

Add a new PC
------------
PC name
PC network
User
...

每个屏幕有一张索引卡和报告。

如果您愿意,可以勾勒出屏幕和报告的外观。

在您可以想象的每个屏幕和报告中完成此操作后,您可以将纸质屏幕映射到纸质数据库(ERD)。如果您可以轻松想象(编码)选择,插入,更新和删除SQL for yor paper数据库,那么您的设计就很好。