数据库设计的新手,无可否认。试图建立一个小型数据库,使我能够沿着任何一条道路找到州公路建设项目信息。关系包括: 一个项目的合同编号;一个县到多个项目;通往许多项目的一条道路;通往许多县和一个县到多个道路的一条道路;许多项目的经理;许多项目的一个承包商;一个经理的联系人列表(电话,电子邮件);许多项目的每个日期(投标,开始,完成)。
将是一个小型数据库,总共可能有500个记录。只有6个县。现在我已经将道路分成了6个单独的“县道”表,所以虽然不同县的路线编号可能相同但每个记录都是唯一的,因为它位于一个单独的县表中。这样可以,还是保留一个道路表并在那里分配县值更好?我创建了其他表格,列出了县,合同,承包商,经理,日期和项目描述。只是不知道如何处理它们。
我的目的是能够主要通过道路编号和关键字搜索,以便在任何给定时间查找哪些项目在哪条路上。我还想通过表单更新此信息。数据会经常变化,对于电子表格来说,这有点太不守规矩了。我根本无法解决如何设置和关联表和单个记录的问题。任何想法都会受到非常感激。
答案 0 :(得分:0)
我想象一个结构简单的数据库。 通常应该并且可以避免多对多关系。 Access并没有直接实现这种关系。您需要在两个主表之间创建一个交叉表。
无论如何,我为比这更复杂的项目创建了一个数据库,所以我试图完成你的请求。
"核心" table是tblProjects,它引用其他表的详细信息。 由于项目与道路有关,我使用道路作为主要项目,道路可以有一个县列表。如果您想知道县内有多少个项目,可以通过查询查找具有该County_ID的所有道路来完成。
如果您想查找一条道路的项目,只需找到road_ID(例如使用组合框来选择它),您就可以通过Road_ID过滤(查询)tblProjects。
tblManagers
tblContractors
tblCounties
tblRoads
tblProjects
带*的字段是关键字段。它们与_ID对应的字段有关(在创建关系时检查参照完整性和级联删除)。 让我知道