Microsoft Access:我需要帮助来规划我的第一个数据库

时间:2015-03-31 22:27:19

标签: forms ms-access database-design sql-execution-plan project-planning

我是Microsoft Access的新用户,因此我对数据库设计有点模糊。我目前有几个Excel电子表格,其中包含我公司管理的不同地点的化学浓度信息。这些电子表格中的每一个都按位置名称和测试日期进行组织。我有一份需要跟踪的每种化学品的电子表格; 7张目前还有更多的未来。这些纸张在最左边有一列位置名称,在最上面有一行化学测试。所以每张纸都看起来像这样。

          June-13    July-13    Aug-13   ...

位置1

位置2

位置3

...

每个电子表格上都会重复每个位置和日期;它们中的7个之间的唯一区别是它们跟踪的化学类型。我已将这些电子表格中的每一个都转移到Access表中。我还通过创建位置表在位置名称数据之间创建了关系。这让我可以创建一个查询&表单按位置名称搜索数据。问题是我对MS Access缺乏经验,并且不确定如何重新排列原始表以允许日期和化学类型搜索。理想情况下,我想设置我的数据库以允许查询和表单让其他人按位置名称,日期和化学类型搜索此数据。我理解查询和表单设计的基础知识,但我的数据似乎没有按照允许我按位置名称搜索任何内容的方式进行规划。任何人都可以建议我可以布置我的表格或创建新表格以帮助我这样做吗?感谢任何帮助,因为我对MS访问非常新。

谢谢。

2 个答案:

答案 0 :(得分:1)

在真正开始使用MS Access之前,您需要解决两个主要概念。第一个是Access位于整个计算空间的地方。第二个是表格数据和交叉制定数据之间的差异。

MS Access位于信息管理的三个主要方面的交叉点。它们是数据库,应用程序和文档。 Access文件是一个文档。它的管理方式与其他类型的文档(如Word或Excel文档)非常相似。在不同类型的文档(例如电子表格和Access表格)之间移动数据也非常容易。这种轻松可能具有欺骗性。当你真的只是脚踝深处时,你可能认为自己掌握了信息管理是非常容易的。

Access文件包含一个应用程序。大多数应用程序设计问题都会被向导简化,这些向导将为您完成大量繁琐的工作,例如基于一个或两个表创建表单等。您可以在应用程序设计中几乎没有任何背景知识。< / p>

Access文件包含数据库。数据库中的数据被布置到表中,并且表行通过外键/主键关系彼此链接。开始使用Access比使用SQL Server或Oracle要容易得多。但是,再一次,开始的容易性可能会掩盖一个可能需要一些努力学习的学科的存在。良好的数据库设计并不复杂。但这是抽象的。除非你能够在适当的抽象层次上思考,否则你会反复射击自己。

在桌面处理的范围内,您可以执行Access中需要完成的任务,您可以开始使用其他工具所需的一小部分学习曲线。但你必须要小心。

切换齿轮,我想提醒您交叉列表数据和表格数据之间的区别。您向我们展示的电子表格,其中日期分布在顶部,而位于左侧的位置是交叉列表数据的典型示例。电子表格用于处理此表单中的数据。关系数据库不是。其他答案指出了一些表格数据的好设计,但在了解差异之前,你不会从这些答案中受益。

通常,使用Excel数据透视表工具比使用Access中的工具更容易将交叉制表数据转换为制表数据。我建议您为数据找出一个良好的关系表系统,然后在将数据加载到Access之前使用Excel转换数据。首次学习数据透视表时,通常会学习如何将表格数据转换为交叉列表数据。走另一条路是有点困难,但它是可行的。

在这方面,请注意Access中没有向导可以帮助您将一组信息需求转换为表系统。在开始使用第一个向导之前,您必须这样做。

这只是冰山的一角。

答案 1 :(得分:0)

根据您提供的说明,我建议按如下方式列出您的数据:

位置表

  • 位置ID
  • 位置名称
  • 位置地址

化学品表

  • 化学ID
  • 化学名称

数据表(随叫随叫)

  • 位置ID
  • 化学ID
  • 阅读日期(即月份)

这样,您拥有的日期可以列为&#34;行&#34;而不是&#34;列&#34;。这将使查询和搜索更加简单。

如果您不熟悉如上所述编写查询来排列数据,您可以在excel文件中进行一些手动操作,以便在导入Access之前以这种方式排列数据。