运行 Access 表单中的参数查询

Running a parameter query within an Access form

我已经创建了表单,允许用户使用 ComboBox 指定查询的约束,即他们所在州的学生出勤率与另一个州的学生出勤率。当我向查询添加多个约束时,问题就出现了。我在 2 个类别上取得了间歇性的成功,但它似乎只与 1 个类别一致。我需要三个类别,但我没有成功让所有三个类别在同一个表单上工作。但是,如果 运行 独立(从查询中删除一些约束),所有类别都会自行工作。所以,我知道我的表单上的 ComboBoxes 可以正常工作。问题似乎出在查询的 SQL.

SELECT 
Students_All_Classes.LastName, Students_All_Classes.FirstName, 
    Students_All_Classes.[Class Name], Students_All_Classes.State, 
    Students_All_Classes.ClassDate
FROM Students_All_Classes
WHERE 
    (((Students_All_Classes.[Class Name])=[Forms]![User Input]![ComboClass])     AND 
    ((Students_All_Classes.State)=[Forms]![User Input]![ComboState]) AND 
    ((Students_All_Classes.ClassDate)=[Forms]![User Input]![ComboDate]));

我认为问题在于 where 语句中的 AND 运算符。如果我将其更改为 OR 我可以使用所有三个约束。但是,我需要约束是累积的,所以它是类别 x 和类别 y 和类别 Z。任何帮助将不胜感激!

谢谢!

试试这个,因为组合数据是一个字符串:

SELECT 
Students_All_Classes.LastName, Students_All_Classes.FirstName, 
    Students_All_Classes.[Class Name], Students_All_Classes.State, 
    Students_All_Classes.ClassDate
FROM Students_All_Classes
WHERE 
    (((Students_All_Classes.[Class Name])=[Forms]![User Input]![ComboClass])     
    AND 
    ((Students_All_Classes.State)=[Forms]![User Input]![ComboState]) 
    AND 
    ((Students_All_Classes.ClassDate)=Format([Forms]![User Input]![ComboDate], "\#yyyy\/mm\/dd\#")));