![]() |
1
2
这种类型的设置可以在1992年的任何版本的access中完成。 在access中对这些经典的一对多关系建模的方式是将父窗体基于父表(注意,我说过partent table,而不是我要再次重复的查询:您不需要为您连接数据的查询)。然后基于子表创建一个称为continues的表单。现在有两个表单,然后可以简单地将子表的表单拖放到上面的父表单中,就完成了。 事实上,如果在“关系”窗口中正确地设计和设置了关系,那么如果使用向导创建表单,它实际上会为您生成并自动插入子表单。 因此,正如我前面指出的,上面的过程中有几个有趣的问题您应该知道,您根本不需要构建任何SQL查询。您不必编写sql来连接数据。Access将为您完成所有这些,并且不需要任何代码。 因此,当您在主窗体中导航记录时,子窗体中的子记录将自动显示和筛选。(如果您添加、删除或编辑这些子记录,则会为您插入并维护正确的关系键,这同样不需要编写任何代码)。
形式如下:
此时,表单将在没有编写任何代码的情况下工作。 其实上面的表格我有一个主要的记录,在左边我有很多会员捐款。不过,我也需要把左边的每一笔捐款分给一个特定的账户,以便记账。(这是一个典型的支票分割,你可以在最近的每个会计软件包中看到) 所以上面的模型是一对多,然后每个捐款的许多成员也分成许多不同的帐户。一个非常强大的设置,几乎没有代码。 所以,在上面我真的做了三个桌子深的模型。|而且,公平地说,右边(捐款分成账户)确实需要一行代码才能正确更新,因为当您深入3个表时,access不会这样做。
如前所述,如果您正确设置了关系,access将自动为您将两者缝合在一起,并为您维护关系。因此,将自动显示属于单亲记录的子记录。这种能力包括编辑、删除和添加这些子记录。因此,当您导航到一个新的reocrd时,所有的子记录和信息都将为下一个表单自动刷新。 换句话说,上述所有操作都可以在不构建任何SQL查询的情况下完成,并且不需要一行代码。 |
![]() |
2
1
http://social.msdn.microsoft.com/Forums/en-US/accessdev 不管怎样,让我们看看我们能想出什么。我还应该指出,您的表设计以及如何关联这些表并不是一个真正的访问问题,而是一个简单的数据库设计问题。对于MySql、Oracle、FoxPro,或者实际上对于我们这个行业过去20多年中使用过的任何关系数据库系统来说,这应该是一样的。因此,当您询问如何设置数据库时,这并不是一个真正的访问问题。
而且,正如您现在所拥有的,同样的建议也适用于LOTES的两个子表。同样,他们不需要商店id,因为根据您的上述设计,他们已经附加到LOTES表,而LOTES表又附加到商店id所在的customer表。因此,在您当前的设计中,customer下面的所有子表都可以并且应该删除store\u id。 然而,我怀疑以上并不是你希望在这里完成的。很可能LOTES记录属于一个商店。如果是这样,那么您希望LOTES表是存储的子表。
这里唯一不清楚的是,你的设计是否允许一个客户连接到多个商店。如果这是一个非常罕见的情况,那么也许您采用了一种更简单的设计,它要么迫使您再次进入客户,要么甚至通过一些复制代码。虽然这种中断在这里通常会出现一些问题,比如如果同一个客户的不同商店的送货地址要更改,那么在这种情况下不进行规范化通常会节省大量代码和设计问题。
如果您确实希望客户拥有多个店铺,那么您需要一个名为tblCustomerStores的表。您将此表作为子表附加到客户,此表将具有存储id。然后您可以将所有客户事务等附加到此子存储表。这个Customer store表甚至可能包含付款类型和交付偏好(例如,如果它们在不同的商店之间有所不同)。 所以,你从 客户->客户商店->交易->
而且,不清楚物品是否附属于特定交易?如果是的话,那么for的项目就是事务的子项。 我想更多的是
您需要客户商店->转移 您需要客户商店->文章
|
![]() |
Michael Samuel · MYSQL在以下情况下自动创建索引 6 年前 |
![]() |
Patricia Rozario · 数据库设计确保一对一关系 6 年前 |
![]() |
dryhay · MySQL“多对多”关系错误 6 年前 |
![]() |
L. Fox · 我在这里用的是什么样的Laravel雄辩的关系 6 年前 |
![]() |
Geoff Harper · 我应该如何构建关系松散的SQL db 6 年前 |
![]() |
waroxx · SQL—当多个表具有相同的列时,最好怎么做 6 年前 |
![]() |
Lumpi01 · SQL 2不同的注释类型-最佳解决方案? 6 年前 |
![]() |
Hayreddin Tüzel · 预约系统数据库建模[关闭] 6 年前 |