2012-07-31 153 views
1

我將前端用作Business Objects和後端MS Access數據庫。 我有以下語法一個字段,當我拉這一領域中查詢得到錯誤,如「預期1太少參數」期望的參數太少1

Format(Votes.`Vote Received`,"yyyymm") 

這句法分析,但是當被拉這個對象查詢給錯誤。我認爲這與字段名稱上的引號有關,但是這個字段是如何命名的。當我拉低字段查詢不給錯誤。

Votes.`Vote Received` 

感謝您的輸入..

+0

沒有得到你.. – user1268559 2012-07-31 04:28:17

回答

0

用方括號,而不是周圍的字段名反引號試試吧。

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驅動程序交互的方式的問題。

+0

我正在使用ODBC連接,並嘗試與方括號以及但沒有運氣..但上述兩種方法工作沒有任何問題對MS Access數據庫 - 無論如何將月份號碼轉換爲兩位數字(01-12),而不使用格式功能..當我使用年(日期)和月(日期),其給出的結果,但像20111 – user1268559 2012-07-31 07:26:34

+0

我現在生氣了..年(投票。[收到投票])和右(「0」和月(投票。 [投票收到]),2)...也給同樣的錯誤不知道爲什麼只是年和月工作 – user1268559 2012-07-31 10:35:57

+0

上午真的很沮喪。 – Fionnuala 2012-07-31 12:39:39

0

根據需要加上一個反引號逃脫this

Format(Votes.`Vote Received`, "yyyymm"); 
+0

很抱歉,但我已經使用轉義字符..它看來,當我在粘貼第一次它有去除 – user1268559 2012-07-31 05:35:09

+0

納撒尼爾·福特的代碼,我agree..not知道爲什麼Business Objects公司給出錯誤 – user1268559 2012-07-31 07:29:49

1

萬一它適用於其他人。我有同樣的問題「太少的參數」,它的工作原理是如果使用反向引用字段轉義和單引號定義日期格式。不知道爲什麼它的工作,但你可以嘗試。

Format(tableused.`fieldused`, 'mm/dd/yyyy') 
相關問題