Database MS Access 07-Q重新查找列与多对多列的比较;Q以多对多形式重新选中复选框

Database MS Access 07-Q重新查找列与多对多列的比较;Q以多对多形式重新选中复选框,database,ms-access,many-to-many,lookupfield,Database,Ms Access,Many To Many,Lookupfield,我正在用Access创建一个数据库。这只是一个测试数据库,类似于我的需求,所以我可以在创建一个用于工作的数据库之前提高我的技能。我为一所虚构的学校创建了一个数据库,因为这是一个很好的游乐场和丰富的数据(很多学生有很多科目,有很多老师等等) 问题1 使用查找列和多对多关联表之间有什么区别(如果有的话)? 我有“教师”和“科目”两个表格。许多老师有许多科目。我可以并且已经创建了一个表“Teacher\u Subject”,并用它运行查询。 然后,我在教师表中创建了一个查找列,其中包含来自主题的数据。

我正在用Access创建一个数据库。这只是一个测试数据库,类似于我的需求,所以我可以在创建一个用于工作的数据库之前提高我的技能。我为一所虚构的学校创建了一个数据库,因为这是一个很好的游乐场和丰富的数据(很多学生有很多科目,有很多老师等等)

问题1 使用查找列和多对多关联表之间有什么区别(如果有的话)? 我有“教师”和“科目”两个表格。许多老师有许多科目。我可以并且已经创建了一个表“Teacher\u Subject”,并用它运行查询。 然后,我在教师表中创建了一个查找列,其中包含来自主题的数据。查找列似乎取代了教师主题表。(尽管查找表和教师科目之间的关系数据明显重复,并且可能有所不同)。哪一个是“更好”的选择?使用查找表是否有障碍? (我意识到这是一个非常“一般”的问题。请链接到其他资源并回答“视情况而定…”的问题,不胜感激)

问题2 查找表吸引我的是以下几点:在为教师输入科目创建表单时,使用查找功能,我只需创建复选框并单击教师的科目“开”或“关”。每次单击“打开/关闭”都会在“查找”列中创建/删除一条记录(该列将替换教师主题)。 如果我使用教师主题查询中的一个表单,将教师作为主表单,主题作为子表单,我会遇到这个问题:在子表单中,我可以选择教师在bombo框中的每个主题,即单击、向下滚动、选择、转到下一行、单击、向下滚动等(时间太长)或者我可以创建一个列表框,列出每行中所有可用的主题,但只允许我选择一个。(占用太多空间)。有没有可能为教师科目设置一个点击开/关列表框,每次点击都在其中创建/删除一条记录

注-我知道零SQL或VB。如果正确的答案是“您需要知道SQL用于此”,那么这很酷。我只是想知道


谢谢

查找表中的列会给您带来更多的压力而不是快乐。除非Sharepoint需要它们,否则应避免使用它们。您可能希望阅读和

查找表格中的列会给您带来更多的压力而不是快乐。除非Sharepoint需要它们,否则应避免使用它们。你可能希望阅读,但我不会使用它们。你的例子很好,但也有局限性。当需要引用主题表中除名称以外的其他字段时,您会怎么做?你如何区分只提供一学期课程的科目

如果没有一些难看的编码,你无法计算每个老师分配了多少科目


另一个限制是,当你开始确定谁在某一学年教了什么课程时

我不会用它们。你的例子很好,但也有局限性。当需要引用主题表中除名称以外的其他字段时,您会怎么做?你如何区分只提供一学期课程的科目

如果没有一些难看的编码,你无法计算每个老师分配了多少科目


另一个限制是,当你开始确定谁在某一学年教了什么课程时

我不太清楚你的第二个问题,但我觉得你需要一个带有下拉列表的子表单

如果你想做复选框的事情,它很快就会变得复杂得多。对我来说,你是从用户界面开始,向后工作到结构,而不是朝着另一个方向

我不太愿意提及这一点,但就全面披露而言,您应该知道,在A2007和A2010中,您有多个可用的值字段,它们与您描述的UI完全一致。但是它们有许多与查找字段相同的问题,并且在代码中使用起来相当复杂。在幕后,它们是用标准的多对多联接表实现的,但它对您来说都是隐藏的


我希望MS能使所有listbox都能使用带有复选框控件的listbox,该控件与MV字段一起使用,但是如果listbox控件不是为此而设计的(例如,带有链接子/链接主属性),那么将其绑定到多对多联接表将非常复杂。

我不太清楚您的第二个问题,但我觉得你需要一个带有下拉列表的子表单

如果你想做复选框的事情,它很快就会变得复杂得多。对我来说,你是从用户界面开始,向后工作到结构,而不是朝着另一个方向

我不太愿意提及这一点,但就全面披露而言,您应该知道,在A2007和A2010中,您有多个可用的值字段,它们与您描述的UI完全一致。但是它们有许多与查找字段相同的问题,并且在代码中使用起来相当复杂。在幕后,它们是用标准的多对多联接表实现的,但它对您来说都是隐藏的


我希望MS能使带有复选框控件的listbox可用于所有listbox,但如果listbox控件不是为此而设计的(例如,带有链接子/链接主属性),则将其绑定到多对多联接表将非常复杂.

我试图找到一种方法,在不实际使用多值字段的情况下,从多值字段中为您提供您喜欢的UI功能。这对我来说似乎很有挑战性

我能想到的最接近的方法是加载一个带有“列表”选项和复选框字段的断开连接的记录集。然后根据数据表视图中显示的记录集创建表单或子表单。它看起来可能类似于绑定到多值字段的组合。在复选框字段的更新后事件中,您需要