rawQuery()中的更新无效

时间:2013-11-11 19:03:55

标签: android sqlite

我正在我的数据库中进行更新,但它无法正常工作。 这是我的代码:

list.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {  
            MeusVeiculosLista mVeiculo = (MeusVeiculosLista) adapter.getItem(position); 
            VeiculosDAO veiculo = new VeiculosDAO(TrocaVeiculoActivity.this);
            veiculo.open();
            veiculo.atualizaAtivo();
            adapter.notifyDataSetChanged();
            veiculo.close();                
        }
    });

这是我执行更新的代码方法atualizaAtivo():

public void atualizaAtivo(){
    mDb.rawQuery("Update tb_veiculo set ativo = 0", null);

}

我使用lita进行测试,当我做声明时,它可以正常工作,但它不适用于手机。

1 个答案:

答案 0 :(得分:2)

rawQuery在android for update中无效。对于此问题,您必须使用SQLiteDatabase.Update方法,如下所示:

ContentValues cv = new ContentValues();
cv.put("ativo", 0);
mDb.update("tb_veiculo", cv, null, null);