参数查询

时间:2011-01-19 16:55:53

标签: ms-access

我正在做一个小型酒店预订数据库。在办理入住手续时,他们会获得一张停车场通行卡(已编号),并需要在结账时退回,以免收取额外费用。以下查询允许用户输入停车场访问卡号。

SELECT AccessKey.AccessKeyID, AccessKey.Distributed
FROM AccessKey
WHERE (((AccessKey.Distributed)=false));

在我的表单上是一个包含卡号列表的组合框。在签入新客人时,我需要帮助对组合框进行编码,以便只显示可用的卡号。

例如......客人检查并获得卡#3,对于下一个猜测,组合框将不显示卡#3 bc它已被分发。

然后我创建了一个复选框,以标记卡是否在客人住宿结束时返回。选中此框后,卡号将返回到组合框中。

1 个答案:

答案 0 :(得分:0)

有些事情不是很清楚,比如什么时候选择accesskey肯定。是在组合框中选择时,还是表单上有一个按钮可以保存表单上的所有数据?

无论如何,您自己创建的查询是一个良好的开端。如果您创建了一个组合框,则可以将此查询添加到组合框的rowsource中。但是,查询中分配的accesskey.dis不是必需的,因为您只会选择值为'false'的那些。确保此组合框的绑定列设置为1,因为这是您正在使用的密钥编号。

现在,在将保存accesskey.distributed状态的事件中(无论是按钮onclick事件还是组合框postupdate事件),您可以编写如下代码:

CurrentDb.Execute "UPDATE AccessKey SET AccessKey.Distributed = true WHERE AccessKey.AccessKeyID = " & Me.ComboBoxName.Value
  Me.ComboBoxName.Requery

最后一行将确保组合框更新,选定的密钥将不再显示在列表中。

现在,对于你的问题的第二部分,现在还不太清楚。该复选框,是在同一表单上,还是与客户结账相关的表格,其中包含与该客户相关的数据(例如他的密钥号)。无论如何,请你澄清这个问题的第二部分。