我想执行一个更新查询,我必须更新许多人的单个字段。 现在下面的查询工作: -如何在Android Sqlite中使用WHERE IN子句?
UPDATE PERSON SET ISSELECTED=1 WHERE ID IN (132,142,115,141,41,133,40,56,139,134,135,65,143,9,64,39,120,104,122,35,19,98,124,127,130,136,119,123,55,102,5,128,140,95,138,131,96,93,129,103,94,89,126,21,29,125,3,101,92,113,4,88,111,63,60,38,114,90,31,118,99,121,117,100,112,97,25,116,10,32,27,30,14,26,12,61,57,20,107,110,91,109,108,106,105,16,62,33,59,18,58,36,11,15,37,28,24,6,7,8,34,13)
但随着execSql
或rawQuery
我试图形成使用update
方法,它返回该查询中使用时,它不会返回更新行数没有。受影响的行数
int rowsUpdatedSelected = db.update("PERSON", values, "ID" + " = ?", new String[] {id.toString()});
// where id is a StringBuilder object containing the ids like above
但这不起作用。
是ID数字字段或数据库中的文本 – 2014-10-30 05:26:44
这是文本字段,但我在sqlite管理器中运行此查询并更新了数据 – 2014-10-30 05:27:48
您的查询结束为'... WHERE ID ='132,142,115,...''。 – 2014-10-30 10:05:51