MS Access 2007中插入查询执行失败

MS Access 2007中插入查询执行失败

问题描述:

我有一个简单的查询中插入一条记录为表(P_Case表)。我从表单中获取文本框中的值(Case_Form)。我在Case_Form中单击命令按钮时执行查询。但是,执行失败,我得到错误“查询输入必须包含至少在表或查询”!MS Access 2007中插入查询执行失败

INSERT INTO P_Case (Case_Date, Case_Desc, Aff_Person) 
VALUES (Forms!Case_Form![Case Date], Forms!Case_Form![Case Desc], (SELECT Person.ID FROM Person WHERE Person.National_ID=Forms!Case_Form![National ID])); 

我感谢您的帮助..

感谢。

它已经有一段时间,为什么我用了访问权限,但我怀疑你可以在VALUES语句中使用子查询。

所以你可以试试:

INSERT INTO P_Case (Case_Date, Case_Desc, Aff_Person) 
SELECT Forms!Case_Form![Case Date] 
    , Forms!Case_Form![Case Desc] 
    , Person.ID 
FROM Person 
WHERE Person.National_ID=Forms!Case_Form![National ID] 
); 

如果不工作,你需要首先从子查询中的值,并将其存储到一个表单变量。

+0

非常感谢YvesR ..这为我工作:) – 2013-03-23 11:28:48