这是我的数据库类。
public boolean updatePrediction(String item_ean,String prediction)
{
SQLiteDatabase db=this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(ITEM_EAN, item_ean);
contentValues.put(PREDICTION_TYPE,prediction);
db.update(TABLE_REPORT,contentValues,PREDICTION_TYPE+"="+,null);
return true;
这是活动类代码段。
toggleButton.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v) {
if (((ToggleButton) v).isChecked()) {
booleanisUpdated=dbcontroller.updatePrediction(editText.getText().toString(),"4");
Toast.makeText(getBaseContext(), "Toggle is on"+isUpdated, Toast.LENGTH_LONG).show();
} else {
Toast.makeText(getBaseContext(), "Toggle is off",Toast.LENGTH_LONG).show();
}
}
});
当我切换切换按钮时,我的case_ean的prediction_type中的特定数据应该会改变。
答案 0 :(得分:0)
execSQL用于执行不是SELECT / INSERT / UPDATE / DELETE的单个SQL语句。
对于UPDATE语句,请改用以下任何一种语法。
您必须为您的案例使用更新,如下所示:
public boolean updatePrediction(String item_ean,String prediction){
SQLiteDatabase db=this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(ITEM_EAN, item_ean);
String[] args = new String[]{prediction};
db.update(TABLE_REPORT,contentValues,PREDICTION_TYPE+"=?",args);
return true;
}