I've a class witch send a Query on my SQLite database. I want to update database when i check my checkbox, setting the value "1" when Checkbox is checked and "0" when the Checkbox is de-checked in the "visto" column.
I've never used SQL Query on Android so I've just follow some tutorials in internet to make this.
This is my class, i call it in my ActivityMain, onCreate:
SQL_visto
public class SQL_visto extends FrammentoUno {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
startService(new Intent(SQL_visto.this, BackgroundService.class));
new SQLMain(this);
}
public class SQLMain extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "web2park";
static final String TABLE_NAME = "allarmi_ingressi";
static final String COL_id_allarme = "id_allarme";
static final String COL_id_park = "id_park";
static final String COL_data_al = "data_al";
static final String COL_stato = "stato";
static final String COL_cod_allarme = "cod_allarme";
static final String COL_descrizione = "descrizione";
static final String COL_targa = "targa";
static final String COL_visto = "visto";
static final String COL_azione = "azione";
static final String COL_varco = "varco";
static final String COL_cassa = "cassa";
private SQLiteDatabase database;
public SQLMain (Context context) {
super(context, DATABASE_NAME, null, 1);
database = getWritableDatabase();
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE allarmi_ingressi (id_allarme INTEGER PRIMARY KEY, " +
"id_park TEXT, data_al TEXT, stato TEXT, cod_allarme TEXT, descrizione TEXT, " +
"targa Text, visto TEXT, azione TEXT, varco TEXT, cassa TEXT );");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
android.util.Log.w(this.getClass().getName(),
DATABASE_NAME + " database upgrade to version " + newVersion + " old data lost");
db.execSQL("DROP TABLE IF EXISTS details");
onCreate(db);
}
private void addListenerOnVisto(int id_allarme) {
final CheckBox visto = new CheckBox(null);
visto.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (((CheckBox) v).isChecked()) {
database.execSQL("UPDATE allarmi_ingressi SET visto = '1'");
visto.setChecked(true);
updateVistoColumn();
}
else if(((CheckBox)v).isChecked())
{
database.execSQL("UPDATE allarmi_ingressi SET visto = '0'");
visto.setChecked(false);
updateVistoColumn();
}
}
});
}
public void updateVistoColumn()
{
database = this.getWritableDatabase();
ContentValues values = new ContentValues();
database.update(TABLE_NAME, values, COL_visto, null);
}
}}
Aucun commentaire:
Enregistrer un commentaire