由於這個問題仍然沒有提供一個適當的解決方案,我想澄清事情。
user658042和Jan Dragsbaek所說的很多都是正確的。有一個重載的方法,爲你的限制條款提供第8個參數,它也必須是一個字符串。
由於LIMIT可以具有或不具有偏移來使用的,所以可以將它寫在SQL作爲
LIMIT 1000 // limit to 1000 entries
或具有偏移
LIMIT 5000, 1000 // limit to 1000 entries with an offset of 5000
主要是,即查詢方法中的限制參數必須作爲字符串傳遞的原因。
總之,只要省略文本「限制」在你的極限參數是去:)
// limit to 1000 entries
return mDb.query(DATABASE_TABLE,
new String[]{ KEY_ROWID, KEY_TITLE, KEY_BODY, KEY_LAT,
KEY_LONGI, KEY_DATE},
null, null, null, null, null, "1000");
// limit to 1000 entries with an offset of 5000
return mDb.query(DATABASE_TABLE,
new String[]{ KEY_ROWID, KEY_TITLE, KEY_BODY, KEY_LAT,
KEY_LONGI, KEY_DATE},
null, null, null, null, null, "5000, 1000");
好了,告訴我們是什麼錯誤,那麼方法。 –
@Graham Borland它的一個語法錯誤 –
爲了防止你想知道,在實際查詢中,'limit' SQL子句將如下所示:'select * from table_name where active = true limit 1000;'。 (如果你理解它在現實中的工作原理,它可能會使它更容易理解和解決。) –