深圳office培训 深圳excel培训
深圳excel培训 深圳office培训
咨询服务
深圳office培训
深圳office培训
office培训
excel培训
ppt培训
vba培训
access培训
word培训
visio培训
project培训
outlook培训
数据库培训
深圳access培训
深圳sql培训
深圳office培训
 

access设计应考虑数据库优化


2016年8月26日 作者: 来源:

 确定所需的表、字段和关系后,就应创建表并使用示例数据来填充表, 然后尝试通过创建查询、添加新记录等操作来使用这些信息。这些操作可帮助发现潜在的问题,例如,可能需要添加在设计阶段忘记插入的列,或者可能需要将一个表拆分为两个表以消除重复。 

确定是否可以使用数据库获得所期望的答案。创建窗体和报表的粗略草稿,检查这些窗体和报表是否显示所期望的数据。查找不必要的数据重复,找到后对设计进行更改,以消除这种数据重复。

在测试初始数据库时,可能会发现可改进之处。以下是要检查的事项:

  • 是否忘记了任何列?如果是的话,该信息是否属于现有的表?如果是有关其他主题的信息,则可能需要创建另一个表, 并为需要跟踪的每个信息项创建一列。如果无法通过其他列计算出信息,则可能需要为其创建一个新列。
  • 是否存在可通过现有字段计算得到的不必要的列?如果某信息项可以从其他现有列计算得出(例如通过零售价计算出的折扣价),则进行计算通常会更好,并能够避免创建新列。  
  • 是否在某个表中重复输入相同的信息?如果是的话,则可能需要将这个表拆分为两个具有一对多关系的表。
  • 是否存在这样的表:具有很多字段,但记录数量有限,且各个记录中有很多空字段?如果有的话,则要考虑对该表进行重新设计,使其包含更少的字段和更多的记录。
  • 每个信息项是否已拆分为最小的有用单元?如果需要对某个信息项进行报告、排序、搜索或计算,则请将该项放入其自己的列中。
  • 每一列是否包含有关所属表的主题的事实?如果某一列不满足此条件,则该列属于其他表。
  • 表之间的所有关系是否已经都由公共字段或第三个表加以表示?一对一和一对多关系要求使用公共列, 而多对多关系要求使用第三个表来表示。

优化“产品”表

假定产品销售数据库中的每个产品都归属于一个大类别,如饮料、调味品或海产品。“产品”表可以包含显示每个产品所属类别的字段。

假定检查并优化数据库设计后,您决定存储类别说明及其名称。如果向“产品”表添加“类别说明”字段,则必须对属于相应类别的每个产品重复使用其类别说明,但这并不是一个好的解决方法。 

更好的方法是让“类别”成为数据库中要跟踪的新主题,使其具有自己的表和主键。然后可以将“类别”表的主键作为外键添加到“产品”表中。

“类别”和“产品”表具有一对多关系:一个类别可以包含多个产品,但一个产品只能属于一个类别。

复查表结构时,要密切注意重复的组。例如,考虑一下包含以下列的表:

  • 产品 ID
  • 名称
  • 产品 ID1
  • 名称1
  • 产品 ID2
  • 名称2
  • 产品 ID3
  • 名称3

其中每个产品都是重复的列组,只通过向列名的末尾添加一个数字加以区别。看到以这种方式进行编号的列时,应重新对设计进行检查。

此类设计有几个缺点。首先,这将强制对产品的数量施加一个上限。超过了这个上限后,就必须向表结构中添加一组新列,而这是一项主要的管理任务。

另一个问题是,对于那些拥有的产品数量少于产品的最大数量的供应商,将浪费一定的空间,因为其他列将为空。此类设计最严重的缺陷在于,它使得很多任务都难以执行,例如按照产品 ID 或名称对表进行排序或索引。

只要看到重复组,就应该仔细地对设计进行复查,以期将该表拆分为两个表。在上面的示例中,使用两个表会更好,一个存储供应商信息,另一个存储产品信息,通过供应商 ID 进行链接。


阅读:946 上一则:access人力资源管理数据库设计思路 下一则:access中的CurrentProject对象

返回前页 返回顶部
温馨提示:本中心是深圳较为专业office培训机构、咨询及报名请先预约,电话:0755-82124110。
深圳地址:深圳红荔路四川大厦1109B-1110(3号龙岗线通新岭地铁站A出口10米)
热线:0755-82124110(福田、南山、宝安) 0755-22205758(罗湖、龙岗、龙华) 13510024571(东莞、惠州、珠海、广州)
北京地址:北京清华大学华业大厦三区三楼 版权所有:深圳万博计算机教育 粤ICP备11006947号-1
 
深圳信息系统项目管理师培训
深圳信息系统项目管理师培训 欢迎咨询!
您好!请点击这里咨询万博教育
深圳万博吴老师
您好!请点击这里咨询万博教育
深圳万博史老师
 
深圳信息系统项目管理师培训
深圳信息系统项目管理师培训