我使用前端作为业务对象和后端 MS Access 数据库。我有一个字段,语法如下
Format(Votes.`Vote Received`,"yyyymm")
此语法正在解析,但在查询中拉出此对象时会出错。我认为这与字段名称上的引号有关,但这就是该字段的命名方式。当我在字段查询下方拉动时不会出错。
Votes.`Vote Received`
感谢您的投入..
我使用前端作为业务对象和后端 MS Access 数据库。我有一个字段,语法如下
Format(Votes.`Vote Received`,"yyyymm")
此语法正在解析,但在查询中拉出此对象时会出错。我认为这与字段名称上的引号有关,但这就是该字段的命名方式。当我在字段查询下方拉动时不会出错。
Votes.`Vote Received`
感谢您的投入..
如果它适用于其他任何人。我有同样的问题“参数太少”,如果使用反引号进行字段转义并使用单引号定义日期格式,它会起作用。不知道为什么它有效,但你可以试试。
Format(tableused.`fieldused`, 'mm/dd/yyyy')
据此,您需要使用反引号进行转义:
Format(Votes.`Vote Received`, "yyyymm");
尝试用方括号代替字段名称周围的反引号。
Format(Votes.[Vote Received],"yyyymm")
如果这不能解决错误,请检查查询 SQL 中所有项目的拼写。
我不明白为什么Format()
你仍然失败。您可以使用不同的方法来生成“yyyymm”格式。将“0”与输出连接Month()
并取最右边的 2 个字符。
SELECT
Year(Votes.[Vote Received]) &
Right("0" & Month(Votes.[Vote Received]), 2)
AS year_month
FROM YourTable;
由于第二个查询也失败了,请直接在 Access 中作为新查询尝试。如果该尝试失败,至少它会让您知道数据库引擎认为哪个项目是缺少的参数......它将显示一个标题为“输入参数值”的消息框,在该标题下方,您会找到“缺少的参数”的名称范围”。而且,如果直接在 Access 中运行时它没有失败……也许这是 Business Objects 与 MS Access ODBC 驱动程序交互方式的问题。