【发布时间】:2018-01-05 20:43:08
【问题描述】:
我有一个名为 FietsAantDagen 的表单、一个名为 QueryFietsAantDagen 的查询和一个名为 Txtinput 的文本框。我正在尝试对 SQL Server 使用直通查询,并在我的查询中使用文本表单的输入作为输入。
查询:
SELECT
Fiets_id,
Fiets_Type,
SUM(DATEDIFF(DAY, Huurovereenkomst_Begin_datum, Huurovereenkomst_Eind_datum)) AS AantalDagen
FROM
Fiets
INNER JOIN
HuurovereenkomstFiets
ON HuurovereenkomstFiets_Fiets_id = Fiets_id
INNER JOIN
Huurovereenkomst
ON Huurovereenkomst_id = HuurovereenkomstFiets_Huurovereenkomst_id
WHERE
YEAR(Huurovereenkomst_Begin_datum) = [Forms]![FietsAantDagen]![Txtinput]
AND YEAR(Huurovereenkomst_Eind_datum) = [Forms]![FietsAantDagen]![Txtinput]
GROUP BY
Fiets_id,
Fiets_Type
在将此查询作为传递查询运行时,我收到以下错误:
ODBC:运行时错误 [Microsoft][SQL Server Native Client 11.0][SQL Server]关键字 'WHERE'/ (#156) 附近的语法不正确
是我在传递查询中使用 Access 文本表单值的问题吗?如果是,我该如何解决?
我阅读了另一个需要添加 () 的溢出问题,我这样做了,现在我得到了错误:
不支持 JOIN 表达式。
我要疯了……
【问题讨论】:
-
查看选择查询的语法。 GROUP BY 出现在 WHERE 子句之后。
-
糟糕,从其他评论中复制它时出错。现在它给出了同样的错误,但是:'!'附近的语法不正确。 (#102)
-
在传递查询之前使用 SSMS 调试您的查询。
-
当您尝试将 MS Access 表单添加到 SQL Server 查询中时,这很难.....
标签: sql sql-server ms-access