如何在MS Access中附加查询结果
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在MS Access中附加查询结果相关的知识,希望对你有一定的参考价值。
我目前正在开展一个基于数据库应用的学校项目。我使用MS Access 2016来做到这一点。
所以数据库系统是关于电影票务系统的。
目前我遇到了这种情况:
- 我有一个电影列表。
表:MOVIES Attr:MovieID,MovieName,流派,评级,MoviePic
- 这个电影列表有各自的showtime
表:SHOWTIMES Attr:Time,MovieID,HallID
- 一部电影可以有很多放映时间
- 所以,一旦我点击一部电影,我就会有一个窗口显示他们各自的播出时间。
- 当showtime窗口打开时,我会有一个按钮,说“选择此showtime”
- 所以,为了预订showtime,我创建了一个名为“Booked Showtime”的新表
表:BOOKED SHOWTIMES Attr:MovieID,Time,HallID
- 那么,如何将用户选择的showtime追加到“Booked Showtime”表?
实际上,当我点击一部电影时打开的“Showtime”窗口是一个查询,因为它将显示所点击的电影的showtime。这就是为什么问题的标题是“..append query result ..”..我需要知道如何根据showtime的查询结果附加到“Booked Showtime”表。
目前我有这个查询:
INSERT INTO [BOOKED SHOWTIMES] ( [Time], MovieID, HallID )
SELECT SHOWTIMES.Time, SHOWTIMES.MovieID, SHOWTIMES.HallID
FROM CUSTOMERS, SHOWTIMES INNER JOIN [BOOKED SHOWTIMES] ON SHOWTIMES.Time = [BOOKED SHOWTIMES].Time
WHERE (((SHOWTIMES.Time)=[Forms]![SHOW SHOWTIME]![Time]) AND ((SHOWTIMES.MovieID)=[Forms]![SHOW SHOWTIME]![MovieID]) AND ((SHOWTIMES.HallID)=[Forms]![SHOW SHOWTIME]![HallID]));
所以上面的查询没有任何工作(你将要追加0行)被添加到“预订的放映时间”表...
答案
听起来你可以使用普通的插入查询,而不是INSERT INTO ... SELECT
:
INSERT INTO [BOOKED SHOWTIMES] ( [Time], MovieID, HallID )
VALUES([Forms]![SHOW SHOWTIME]![Time], [Forms]![SHOW SHOWTIME]![MovieID], [Forms]![SHOW SHOWTIME]![HallID])
但是,我看不到customers表的相关性,看起来你对该表没有任何作用。
以上是关于如何在MS Access中附加查询结果的主要内容,如果未能解决你的问题,请参考以下文章
如何将 MS-Access 选择查询的结果保存在 C#.net 中的变量中?
即使没有结果,如何在分组的 MS Access 报告中显示类别