2011-04-02 60 views
1

我在使用SQLite的Air應用程序中運行此操作。試圖運行一個查詢,我得到這個錯誤,但它似乎不應該是這樣的情況下,除非我誤解了一些東西。參數計數不匹配?但我相當肯定他們匹配

details:'參數數量不匹配。在指定的SQL中找到1個,在參數屬性中設置3個值。期待值 ':PatientId'

SQL語句文本:

SELECT DateTime, BolusTotal FROM Bolus 
WHERE DateTime >= ':Date :StartTime' 
AND DateTime < datetime(':Date :StartTime', '+24 hours') 
AND PatientID = :PatientId 
ORDER BY DateTime ASC 

和3個參數進行設置。 :日期 - 2011-04-03,:PatientId - 1,:StartTime - 00:00:00。

我錯過了什麼嗎?因爲我在指定的SQL中看到3個參數...

回答

2

單引號中的參數未被識別爲參數 - 它認爲它們只是字符串的一部分。僅:PatientId被視爲參數。

您需要在第一種情況下傳入完全格式化的日期時間,第二種情況下,可以在呼叫外添加24,然後將其作爲另一個參數傳遞。

+0

太棒了!應該是明顯的..我被卡住了,因爲我在看一個使用單引號而不是雙引號來描述查詢字符串的例子,這讓我覺得把一個字符串而不是int的參數放在裏面是正確的引號。 – Damon 2011-04-02 05:50:09