这是我第一次在这里发帖,但这绝对不是我第一次在这个网站上找到答案!
我正在为我们日益增长的零售链创建一个IT资产跟踪数据库。我们已经评估了几种不同的服务,但它们都不能完全满足我们的所有需求,所以我们选择了定制路线。最终,我们计划使用SQL数据库和web前端,但就目前而言,Access是启动和运行的最快方法。
我们不仅希望追踪商店里的资产,还能追踪员工使用的资产。以下是我目前(与这一问题有关的)表格:
在我最初的数据库设计中,我们只是跟踪存储资产。我有我的资产表和存储表,还有一个AssetAssignment表,其中包含来自这两个表的外键。
如果我想将资产分配给商店或员工,那么做这件事的最佳方法是什么?我应该创建一个StoreAssignments表和一个EmployeeAssignments表吗?如果我这样做,那么在尝试运行所有资产的报告/查询时,它会不会变得更加复杂呢?
我是否应该创建某种类型的实体表,其中每个位置和员工都有一个EntityID。然后,我可以将资产分配给实体,而不是直接分配给员工或商店?这样的事情是正确的道路,还是完全相反的方向?
多年来,我一直在使用Access和SQL数据库,但从来没有太高级过。我绝对不是DBA!
如能提供任何建议,将不胜感激。(我相信我还会有更多的问题要问;)
发布于 2017-02-14 19:24:04
解决这个问题的方法有很多种,但一个简单的方法可能是创建一个新的表实体,您可以在其中进行赋值。

无论赋值表是哪种类型,都是为每个外派添加条目的位置。
因此,Asset是Asset表中的外键。外派类型是一些为什么要确定它是分配给一个地点或雇员(这可以是简单的文本,或一个数字),然后外派Id是外键从任何一个地点或雇员
如果一次只将一个资产分配到一个位置,则赋值表可以将资产id作为密钥。
还有其他的方法,它们可能更好,也可能更糟,但没有必要让它变得比你需要和超越工程更复杂。一个好的解决方案是一个简单的工作和满足您的需要。
https://stackoverflow.com/questions/42234062
复制相似问题