Access VBA DoCmd中的子查询

时间:2019-03-11 13:56:57

标签: sql ms-access access-vba

我正在尝试在Access / VBA中运行以下内容

0

DoCmd.RunSQL SQLStatement:="INSERT INTO [Assets All] (RoomID) VALUES (SELECT RoomID from findNewRoomID )" 是一个查询,是表单记录源的一部分,它仅返回一个结果。

该错误消息表明子查询中存在语法错误。

我也尝试使用findNewRoomID的SQL代码,但是它也不起作用。

1 个答案:

答案 0 :(得分:1)

使用INSERT INTO语句的VALUES子句时,应提供以逗号分隔的值列表,并且该列表只能用于插入单个记录进入目标表。

如果相反,您希望传递附加可能返回多个记录的SELECT查询的结果,则只需使用:

DoCmd.RunSQL "INSERT INTO [Assets All] (RoomID) SELECT RoomID from findNewRoomID"