我正在使用Android(SQLite)开发,但是我认为这是Java问题。
我想更新一个表TABLE_GASTOS,我的WHERE子句是“(col_MES +” =?AND“ + col_ANO +” =?“))”,问题出在args上。

db.update(TABLE_GASTOS, values, (col_MES+" =? AND " +col_ANO+"=?"), args);


我该怎么做(有一系列不同类型的对象):

**String[] args = new String[]{gasto.getMes(),gasto.getAno()};**


如果
gasto.getAno返回一个整数。

gasto.getMes返回一个字符串。

为了使我在db.update上的最后一个参数为args。

最佳答案

虽然通常最好使用SQL参数,但Android数据库API仅允许使用字符串。

将整数值直接插入SQL中:

db.update(TABLE_GASTOS, values,
          col_MES+" =? AND " +col_ANO+"="+gasto.getAno(),
          new String[]{gasto.getMes()});

07-28 09:34