从SQLite数据库中删除指定的行数

Sat*_*ish 4 sqlite android

我试图使用以下语句从数据库中删除6行,但我得到如下所示的错误

.getWritableDatabase()execSQL( "DELETE FROM tblname ORDER BY _id ASC LIMIT 6;");

错误: 引起:android.database.sqlite.SQLiteException:near"ORDER":语法错误:DELETE FROM tblname

我尝试以不同的方式重新格式化SQL,但我无法让它工作.我错过了什么?非常感谢你的帮助

Bor*_*lid 8

DELETE FROM tblname WHERE `_id` IN (SELECT `_id` FROM tblname ORDER BY `_id` ASC LIMIT 6)
Run Code Online (Sandbox Code Playgroud)

不过,我认为你的问题可能一直在引用_id.


小智 5

sqlite 中 DELETE 的 LIMIT 和 ORDER 选项是可选的,而且它们似乎未在 Android 上启用。即使没有引号,上面的 Borealid 的 SQL 也能正常工作。