Ms access MS Access 2003中的查询
我正在为一家小旅馆建立数据库。一旦客人预订了房间,他们就会收到一张停车场卡,需要在客人退房时归还。我需要帮助编写一个查询,让用户知道停车场卡01(或任何已经发给客人的卡#)不可用。谁能帮我设置一下吗。谢谢 使用的TBL 客人待定Ms access MS Access 2003中的查询,ms-access,Ms Access,我正在为一家小旅馆建立数据库。一旦客人预订了房间,他们就会收到一张停车场卡,需要在客人退房时归还。我需要帮助编写一个查询,让用户知道停车场卡01(或任何已经发给客人的卡#)不可用。谁能帮我设置一下吗。谢谢 使用的TBL 客人待定 GuestID PK 入住日期 退房日期 房间# 房间类型 访问密钥Id 访问密钥tbl 访问密钥ID PK 分布式-是或否从您的表中,似乎可以获取房间访问密钥,如果访问密钥表包含停车场卡,则可以获取该信息,但这些表的结构可能更好 SELECT [Access Key
GuestID PK
入住日期
退房日期
房间#
房间类型 访问密钥Id 访问密钥tbl
访问密钥ID PK
分布式-是或否从您的表中,似乎可以获取房间访问密钥,如果访问密钥表包含停车场卡,则可以获取该信息,但这些表的结构可能更好
SELECT [Access Key ID]
FROM [Access Key tbl]
WHERE Distributed = True
在表名或字段名中使用空格从来都不是一个好主意,因为这只会导致压力——记住在所有内容周围都放上方括号
考虑这样设置的表:
Guests
GuestID
Etc.
Cards
CardID
CardType (Room or Parking)
CardsIssued
CardID
GuestID
IssueDate
ReturnDate
您提供的详细信息没有指定任何关系,因此根据您提供的信息,我假设您想要做的只是告诉您在任何给定时间哪些键可用/不可用 对于初学者,您可以使用以下查询列出所有尚未分发的密钥
SELECT tblKey.KeyID, tblKey.Distributed
FROM tblKey
WHERE (((tblKey.Distributed)=False));
将=False更改为=True以反转逻辑并显示已分发的所有卡
SELECT tblKey.KeyID, tblKey.Distributed
FROM tblKey
WHERE (((tblKey.Distributed)=False));
如果要查找特定的密钥ID以确定其是否已分发,请使用以下命令:
SELECT tblKey.KeyID, tblKey.Distributed
FROM tblKey
WHERE (((tblKey.KeyID)=[Enter Key ID]));
这将为用户提供一个可以输入密钥ID的窗口。查询参数有更详细的解释我们需要了解存储此信息所用的表结构,以便能够进行查询。您将分发的卡的相关信息存储在哪里?涉及哪些表?如何在表单中使用此查询?如果我有一个包含表单上列出的所有卡片的组合框,我需要用户能够查询哪些卡片尚未分发,并将其分发给新客户。这是一个广泛的问题(有些超出了原始问题的范围)因为有很多方法可以实现这一点,例如,组合框的行源可以基于查询,以便它只列出用户可用的密钥ID。