如何在MS Access中附加查询结果

问题描述 投票:0回答:1

我目前正在开展一个基于数据库应用的学校项目。我使用MS Access 2016来做到这一点。

所以数据库系统是关于电影票务系统的。

目前我遇到了这种情况:

  1. 我有一个电影列表。

表:MOVIES Attr:MovieID,MovieName,流派,评级,MoviePic

  1. 这个电影列表有各自的showtime

表:SHOWTIMES Attr:Time,MovieID,HallID

  1. 一部电影可以有很多放映时间
  2. 所以,一旦我点击一部电影,我就会有一个窗口显示他们各自的播出时间。
  3. 当showtime窗口打开时,我会有一个按钮,说“选择此showtime”
  4. 所以,为了预订showtime,我创建了一个名为“Booked Showtime”的新表

表:BOOKED SHOWTIMES Attr:MovieID,Time,HallID

  1. 那么,如何将用户选择的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行)被添加到“预订的放映时间”表...

ms-access access-vba
1个回答
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表的相关性,看起来你对该表没有任何作用。

© www.soinside.com 2019 - 2024. All rights reserved.