2012-08-02 90 views
1

在一个相对复杂的关系数据库的开发过程中,我为自己找到了一些点。困难的交叉表查询

目的数据库是为了让管理者安排与代表(或群体的代表)从特定的公司会议。

自然表,列出有关安排会议的细节,是非常重要的。不幸的是,其大部分信息几乎不可能由用户解析,因为字段仅仅返回其他表的数字字段。

因此,其实我需要什么,要能够创建一个查询,将齐聚所有这些不同的信息,绑在会议的关键,并允许用户在所有相关信息在表单中输入...好安排这种任命。

这里的原理图(一些无关紧要的信息是隐藏的)

Appointment relationship diagram

(是我的想象或巴布亚新几内亚异常小?)

我想产生一个很长系列的SELECTS和INNER JOINS。像

SELECT Meeting.MID, Meeting.Date_dd/mm/yyyy, Meeting.Location, Contact.Cname, Contingent.Manager [...] 
FROM Meeting INNER JOIN (ContactMeeting INNER JOIN (Contact INNER JOIN [...] 

但我担心,因为关系不是线性的;联系人会议分成Contact,Group_contact和Contingent;在这种情况下INNER JOINS可能无法正常工作。 ContactMeetings可能有联系人,Group_contact或两者都存在(包括或),但始终有一个或然目前(其中将包括一个或多个经理)。

与此有关的帮助将不胜感激!

+0

您是否考虑过使用子表单进行简化? – Fionnuala 2012-08-02 16:11:05

+0

在Access 2010(这是我目前使用的rdms)中,很难使用子表单而不会让它看起来很丑 - 而且,虽然我已经咬住了其他表单的子弹形状,但我不愿意在某种情况下使用子表单。呃..至少需要三个。特别是因为在主表格和子表格之间不存在直接的联系(也就是说会有一个中间表,如特遣队)。 – user137263 2012-08-02 16:18:57

+0

表格不一定要看起来很丑,而且它们是MS访问的强大优势之一。将包含的表单边框设置为对话框,摆脱水平滚动和其他几个位,并且子表单将很好地融合到表单中。我经常这样做。 – Fionnuala 2012-08-02 16:21:23

回答

1

对于漂亮子窗体,您可以设置某种形式的属性由子窗体控件包含的形式。您需要在设计视图中打开(子)表单。

Border style