删除sql中的特定行而不引用ID

时间:2015-12-11 08:14:46

标签: android database sqlite row

示例:我已将3个相同的值数据(a,a,a)插入数据库

在数据库中

如何通过引用行号来删除第二行的'a'。

1 个答案:

答案 0 :(得分:-1)

使用slqlite3您的选项是

"DELETE from example_table where example_column = 'a';"
然而,这会删除所有带有'a'的行,这不是你想要的。你能做的是搜索所有'a'位。然后获取第二个的id然后删除该id的位置。

我假设你的问题是你的意思是你不知道id,而不是你没有id列。 (你真的应该这样做,否则你的数据库将变得非常缓慢和无法使用)

实施我的解决方案:

// get the id of the second a row.
 Cursor c = db.rawQuery("SELECT id from example_table where example_column = a ;");
// iterate and get 2nd row
if (c.moveToPosition(1)){ // positions start at 0 in programming
   int id = c.getInt(0);
   db.exec("DELETE from example_table where id ="+id+";");
}