Sql 将查询中的项添加到表单

Sql 将查询中的项添加到表单,sql,database,ms-access,Sql,Database,Ms Access,我在Access 2010上 我正在设计一个数据库来帮助跟踪社区项目的参与者 我有一个名为ParticipantMaster的表,其中包括ParticipantID、FirstName、LastName、Address、Phone等字段,以及在此表上构建的条目表单 我有一套收集出席数据的表格/表格(有级别显示他们是否参加了部分、一半或全部课程)。。。与我的问题相关的字段包括参与者ID(来自参与者主控)、工作区ID、级别 根据出勤数据,我创建了一个名为出勤\u FullorHalf的查询,该查询统

我在Access 2010上

我正在设计一个数据库来帮助跟踪社区项目的参与者

我有一个名为
ParticipantMaster
的表,其中包括
ParticipantID、FirstName、LastName、Address、Phone
等字段,以及在此表上构建的条目表单

我有一套收集出席数据的表格/表格(有级别显示他们是否参加了部分、一半或全部课程)。。。与我的问题相关的字段包括
参与者ID
(来自参与者主控)、
工作区ID
级别

根据出勤数据,我创建了一个名为
出勤\u FullorHalf
的查询,该查询统计每个参与者参加了多少次一半或一半的课程。字段包括
ParticipantID
CountStatus
FirstName
LastName
。此查询工作正常

除了出席之外,我还有一个名为
访谈
的表格和表格,每次我给参与者打电话时都会记录下来。他们只有在出席人数超过2后才有资格参加面试

我希望出席人数显示在面试记录表上,这样我就可以看到他们是否符合面试条件

可能是一个文本框,显示如下内容

SELECT CountStatus from Attendance_FullorHalf 
WHERE ParticipantID (from Attendance_FullorHalf query) = ParticipantID (of the record I'm on in the interview form)
我知道我可能不需要这样的陈述——我只是写下它来帮助解释我的问题

因此,如果我在面试表格中,输入ID为20-563的参与者的信息,我希望它在表格上显示20-563号参与者参加了多少次会议


希望我的问题很清楚——非常感谢

当然,在forms oncurrent event中,您可以编写一个查询,提取该参与者ID的出席人数,然后用查询结果更新文本框

我是不是遗漏了什么

从下面的评论中编辑以下内容:

在面试记录表单上创建一个文本框

为表单创建onCurrent事件并选择code builder 您应该有一个如下所示的窗口

Private Sub Form_Current()

End Sub
您需要在其中编写代码。。。像这样的事情应该给你一个工作的起点

Private Sub Form_Current()
    Dim rs as DAO.Recordset 'recordset object to hold the results of the sql query
    set rs = CurrentDB.OpenRecordset("INSERT YOUR SQL HERE")
    If rs.RecordCount > 0 Then 'we have a value for this participant
        txtBox.Text = rs![FIELDNAME] 'update the textboxes text value
    Else
        txtBox.Text = "0" 'else no value means 0
    End If
    set rs = nothing ' clean up the recordset after we've finished with it
End Sub
现在,上面的内容非常粗糙和肮脏,但原则是相当健全的。打开记录集,对其运行SQL,如果记录集现在有结果,则使用这些结果更新文本框


希望这能帮助你开始

不,我不认为你遗漏了什么。。。我想你明白我的意思了。我只是不知道在哪里或者怎样做。我在哪里输入该查询&如何使其显示在该表单上?在当前事件上,我可以选择通过宏/表达式/代码生成器生成事件。我看不到一个地方可以用SQL编写(这是我最了解的)。我不知道如何使用这些构建器,以及如何让它们显示在文本框中。我已经更新了我的答案,希望能给你一个不错的起点谢谢——我自己也做了一些调查,得出了这样的结论,这似乎行得通:我创建了一个文本框,并使用了这个表达式构建器
=DLookUp(“CountOfStatus”,“出席人数”、“[ParticipantID]=Form![ParticipantID]”
……好吧……如果它有效,那就不要修复它!就我个人而言,我正在将一些较旧的access 2003应用程序升级到2010 atm,各种DCount/DLookup功能是工作生活的祸根!但这是另一篇文章的问题/咆哮;)