Access 2010为什么我被提示输入参数值

时间:2016-09-06 15:08:53

标签: sql ms-access ms-access-2010

以下是来自Access 2010的子查询。我提示用户输入年份(yyyy)和月份(1-12),但由于某种原因,用户也会收到提示输入网站的提示。有人可以告诉我为什么吗?我不希望用户提示进入网站。

PARAMETERS [Enter Year (yyyy)] Text ( 255 ), [Enter Month (1-12)] Short;
SELECT Sum([AB Units]) AS [Monthly AB Units], 
SELECT Count(*) FROM [New  Referrals] 
   WHERE ((Year([New Referrals].[Date of Referral]) = [Enter Year (yyyy)]) 
   AND (Month([New Referrals].[Date of Referral]) = [Enter Month (1-12)]))
   AND ([New Referrals].[First Visit] Is Null) 
   AND (([New Referrals].Site)="2")) 
 AS Waitlist FROM [DNS] 
WHERE (((Year([DNS].[Date of Entry]))=[Enter Year (yyyy)]) 
   AND ((Month([DNS].[Date of Entry]))=[Enter Month (1-12)]) 
   AND (([DNS].Site)="2")); 

2 个答案:

答案 0 :(得分:1)

最有可能的是,名为Site的字段不在[New Referrals]或[DNS]中。检查两个表并确保其中存在该字段,因为查询中存在对该字段的引用。

如需进一步审核,请查看this article on the Microsoft website

答案 1 :(得分:0)

就像@JohnnyBones一样,它很可能是一个名不副实的字段,但是说你确实有一个语法错误应该出现在你的SQL视图中:

您缺少与第一个WHERE子句一起使用的括号

WHERE (((Year([New Referrals].[Date of Referral])

应该是这样的:

{{1}}

一个好的文本编辑器(我使用Textpad)会显示匹配的括号 - 更重要的是哪些没有匹配