如何在SQLite中修改项目的值?

Ale*_*dro 4 sqlite android

假设我有这个sqlite数据库结构:

 ID     PRODUCT_NAME     AVAILABILITY 

  1       foo            0
  2       bar            1
  3       baz            0
  4       faz            1
Run Code Online (Sandbox Code Playgroud)

我如何修改fom的值AVAILABILITY- > 0在哪里PRODUCT_NAME = 'bar'?像这样的东西,Pseudocod:

db.execSQL( "UPDATE TABLE" + Table_name + "MODIFY" + availability + "=" + 0 + "WHERE" +  product_name + "like ? " + 'bar');
Run Code Online (Sandbox Code Playgroud)

我假设我还必须使用onCreate()和onUpgrade()方法删除并重新创建表,对吧?一些代码将受到高度赞赏.

ρяσ*_*я K 5

用这个:

SQLiteDatabase db=dbHelper.getWritableDatabase();
String sql="update "+Table_name+" set availability='0' where product_name like 'bar'";
Object[] bindArgs={"bar"};
try{
            db.execSQL(sql, bindArgs);
return true;
}catch(SQLException ex){
Log.d(tag,"update data failure");
return false;
}
Run Code Online (Sandbox Code Playgroud)

  • `product_name like?`如果你在bindArgs中放了``bar`` (2认同)