2010-08-09 146 views
4

我嘗試使用下面的語句從數據庫中刪除6行,但低於刪除指定的從SQLite數據庫中的行數

getWritableDatabase()。execSQL我得到所示的錯誤(「DELETE FROM tblname ORDER BY _id ASC LIMIT 6;「);

錯誤: 引起:android.database.sqlite.SQLiteException:近 「序」:語法錯誤:DELETE FROM tblname

我試圖重新格式化以不同的方式在SQL,但我無法得到它上班。我錯過了什麼?非常感謝您的幫助

回答

8
DELETE FROM tblname WHERE `_id` IN (SELECT `_id` FROM tblname ORDER BY `_id` ASC LIMIT 6) 

但我認爲您的問題可能引用了_id

+0

謝謝。確切的SQL工作。我不確定爲什麼原始SQL不起作用。根據本文檔(使用DELETE中的LIMIT),它應該已經工作 http://www.sqlite.org/lang_delete.html 再次感謝您的幫助。 – Satish 2010-08-10 06:49:09

4

DELETE在sqlite中的LIMIT和ORDER選項是可選的,它看起來並沒有在Android上啓用。上述Borealid的SQL即使沒有引號也能正常工作。