“表达式输入错误,或者太复杂”错误 - Access 2007

时间:2012-05-07 05:40:58

标签: ms-access ms-access-2007 jet-sql

正如问题所说,每当我尝试运行查询时,都会收到此错误。

我想在每个表格中搜索3个字段,OEM代码,模型和其他搜索字词。

这是SQL:

PARAMETERS [Search] Text ( 255 );
SELECT *
FROM inkSearch
WHERE inkSearch.[OEMCode] & inkSearch.[printers] & inkSearch.[ast] LIKE "*" & [Search] & "*"
UNION SELECT *
FROM tonerSearch
WHERE tonerSearch.[OEM Code] & tonerSearch.[Models] & tonerSearch.[Additional Search Terms] LIKE "*" & [Search] & "*";

如果我删除LASERS。[Models]字段,错误就会消失,但这与油墨打印机字段没有什么不同,我认为这没有理由给我带来问题。

1 个答案:

答案 0 :(得分:0)

我已将查询更改为此似乎有效。我最初基于两个缩小字段的查询。

我还发现,“型号”字段是墨粉表上的文本和墨水上可能导致墨水的备忘录。

以下查询似乎解决了此问题:

PARAMETERS [Search] Text ( 255 );
SELECT LASERS.[OEM], LASERS.[T1inclSell], LASERS.[Yield], LASERS.[Models], LASERS.[AST]
FROM LASERS
WHERE (LASERS.[OEM] & LASERS.[Models] & LASERS.[AST]) Like "*" & [Search] & "*"
UNION ALL SELECT INKS.[OEM], INKS.[T1inclSell], INKS.[Yield], INKS.[Models], INKS.[AST]
FROM INKS
WHERE (INKS.[OEM] & INKS.[Models] & INKS.[AST]) Like "*" & [Search] & "*";