两个 INNER JOIN ODBC MSAccess 异常与查询
Posted
技术标签:
【中文标题】两个 INNER JOIN ODBC MSAccess 异常与查询【英文标题】:Two INNER JOIN ODBC MSAccess exception with query 【发布时间】:2014-04-25 09:56:08 【问题描述】:我有一个问题.. 我想从 c# 应用程序使用 odbc 到 msAccess 连接到我的数据库。我有异常错误。请我的查询...它应该可以工作,但显然我在这里做错了事情..
ERROR [42000] [Microsoft][ODBC Microsoft Access Driver] 语法错误 查询表达式中的(缺少运算符) '[autoResults].[autoStats]=[autoStats].ID INNER JOIN [users] ON [users].ID=[autoStats].userID
string queryString =@"
SELECT [erNumber].[autoResults],
[passedTesting].[autoResults],
[releaseVersion].[autoStats],
[lastFunction].[autoResults],
[startTime].[autoStats],
[Name].[users]
FROM [autoStats]
INNER JOIN [autoResults]
ON [autoResults].[autoStats]=[autoStats].ID
INNER JOIN [users]
ON [users].ID=[autoStats].userID
WHERE [erNumber].[autoResults] LIKE '" + TextBox1.Text + "'";
【问题讨论】:
【参考方案1】:对多个 JOIN 的访问可能很繁琐,并且通常需要将它们括在括号中。所以不是
FROM [autoStats]
INNER JOIN [autoResults]
ON [autoResults].[autoStats]=[autoStats].ID
INNER JOIN [users]
ON [users].ID=[autoStats].userID
试试
FROM
(
[autoStats]
INNER JOIN
[autoResults]
ON [autoResults].[autoStats]=[autoStats].ID
)
INNER JOIN
[users]
ON [users].ID=[autoStats].userID
【讨论】:
据我所知,当您有多个JOIN
时,JET 总是需要括号
谢谢!但是..这样我得到了以下.. > 错误 [07002] [Microsoft][ODBC Microsoft Access Driver] 参数太少。预期 6. 对此有什么解决方案吗?我尝试用 ( ) 分隔 INNER JOINS,但它仍然无法正常工作。以上是关于两个 INNER JOIN ODBC MSAccess 异常与查询的主要内容,如果未能解决你的问题,请参考以下文章
两个 INNER JOIN 的 FULL OUTER JOIN