2017-05-30 39 views
0

這裏是我與整數值綁定的Sqlite查詢:綁定值SQLite不匹配錯誤

Id是表中的整數類型。

SELECT Id, FName,SortString, 1 as OrderStr 
FROM CTable 
WHERE ? = Id AND SortString glob '[A-Z]*'  
UNION 
SELECT Id, FName,SortString, 2 as OrderStr 
FROM CTable 
WHERE ? = Id AND SortString NOT glob '[A-Z]*' 
ORDER BY OrderStr, FName DESC LIMIT ? OFFSET ? 

sqlite3_stmt * c_list_x = NULL; sqlite3_prepare_v2成功。現在,當我綁定如下:

int Id = 1; 

sqlite3_bind_int(c_list_x ,1, Id); 
sqlite3_bind_int(c_list_x ,2, Id); 

int result = sqlite3_step(c_list_x);

結果是20(SQLite的不匹配:數據類型不匹配)

爲什麼我甚結合整數值後得到這個?
任何人都可以幫我得到我想要的結果嗎?

+0

你爲什麼要比較一個整數字符串? –

+0

@GordonLinoff我沒有得到你。我在哪裏比較字符串到Int? –

+0

我甚至試過鑄造:sqlite3_bind_int(c_list_x,1,static_cast (Id));但沒有運氣。 –

回答

0

已解決!在結合過程中,LIMIT和OFFSET值被遺漏。 謝謝:)