2010-08-09 2 views
4

나는 다음과 같은 문을 사용하여 데이터베이스에서 6 개 행을 제거하려고하지만 난 오류가삭제 지정된 수

getWritableDatabase().에는 ExecSQL 아래와 같이 얻을 삭제 LIMIT 6; ");

오류 : android.database.sqlite.SQLiteException : 으로 인한 주변의 "주문": 구문 오류 : 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

4

sqlite의 DELETE에 대한 LIMIT 및 ORDER 옵션은 선택 사항이며 Android에서는 사용할 수없는 것으로 보입니다. 위의 Borealid의 SQL은 따옴표 없이도 제대로 작동합니다.

관련 문제