数据库设计减少对“查找字段”的依赖

时间:2016-07-14 14:07:55

标签: ms-access database-design schema

我挑战你解决这个难题!我正在创建一个数据库来跟踪客户订单。这些订单可能非常复杂,有很多选项,所以我需要设计数据库,以便不会达到Access中每个表的32个关系规则。要求如下:

订单:(需要大约20个字段的标题数据,如名称,传入日期,发货日期,框架等)。

选择字段:每个订单关联约60个不同的选择字段以定义工作范围(不同类型的检查,每个拆卸部件的配置,要重新安装的部件类型,如何准备运输组件,等..)希望这些是订单表中的下拉字段...

选项:每个选择字段有2-6个选项。这些选项中的每一个都有描述,并且还指出应该执行哪些操作。

操作:根据上面选择的选项列出应包含的所有可能操作。每个操作都有大约5个与之关联的信息字段(操作号,描述,完成时间等)

我目前有一个包含几百行VBA代码的excel文件,可以对所有选项进行排序,并为我创建下拉框...我现在用它来创建报价单,工作单和各种各样的东西。它一直是那些从小开始变身为野兽的项目之一。问题是,我现在喜欢野兽并依赖野兽,但是现在是时候找到一个新家,它可以有一个自己的空间来呼吸一点。

感谢您的投入!

1 个答案:

答案 0 :(得分:0)

  1. 您不需要外键(“关系”)或索引来查询或更新。

  2. 您可以使用每个表中较少的外键来存储相同的信息,方法是将表替换为新表,每个表都包含它的投影(即只有一些列),只要新表中的每个表都有列出原始表的某个候选键(PK / UNIQUE)的那些列,它们共同占据原始表的所有列。您可以通过在候选键上将新表连接在一起来重建原始表。

  3. 要最大限度地减少对引用原始表的查询代码的更改,您可以定义其表达式为该连接的视图。