How to I check the database table located in Database_sticker. My teacher told me to add some codes to my ListNearablesActivity.java but I have no idea how to can someone please help me with it
ListNearablesActivity.java
beaconManager.setNearableListener(new BeaconManager.NearableListener() {
@Override
public void onNearablesDiscovered(List<Nearable> nearables) {
toolbar.setSubtitle("Found shoes: " + nearables.size());
adapter.replaceWith(nearables);
for (Nearable nearable : nearables) {
if (nearable.isMoving) {
try {
// Check Database
Class<?> clazz = Class.forName(getIntent().getStringExtra(EXTRAS_TARGET_ACTIVITY));
Intent intent = new Intent(ListNearablesActivity.this, clazz);
intent.putExtra(EXTRAS_NEARABLE, adapter.getItem(nearables.indexOf(nearable)));
startActivity(intent);
} //close for try
catch (ClassNotFoundException e) {
Log.e(TAG, "Finding class by name failed", e);
} //close for catch (ClassNotFoundException e)
}
}
} //for override
}); //for beaconManager.setNearable
Database_sticker.java (my database file)
public class Database_sticker extends SQLiteOpenHelper {
private static final int DATABASE_VERSION = 1;
private static final String DATABASE_NAME = Environment.getExternalStorageDirectory().toString() + "/sresult.db";
private static final String TABLE_SRESULT = "Sresult";
private static final String KEY_ID = "id";
private static final String KEY_DESC = "desc";
private static final String KEY_SA = "sa";
private static final String KEY_CA = "ca";
private static final String KEY_COO = "coo";
private static final String KEY_SM = "sm";
private static final String KEY_PRICE = "price";
public Database_sticker(Context context){
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
//creating Tables
@Override
public void onCreate(SQLiteDatabase db){
String CREATE_SRESULT_TABLE = "CREATE TABLE " + TABLE_SRESULT + "(" + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," + KEY_DESC +
" TEXT,"+ KEY_SA + " TEXT," + KEY_CA + " TEXT," + KEY_COO + " TEXT," + KEY_SM + KEY_PRICE + " REAL" + ")";
db.execSQL(CREATE_SRESULT_TABLE);
}
//upgrading database
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion){
//drop older table if existed
db.execSQL("DROP TABLE IF EXISTS " + TABLE_SRESULT);
//create tables again
onCreate(db);
}
public void addSresult(Sresult sresult){
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_DESC, sresult.getDesc()); //get description
values.put(KEY_SA, sresult.getSa()); //get size available
values.put(KEY_CA, sresult.getCa()); //get colours available
values.put(KEY_COO, sresult.getCoo()); //get country of origin
values.put(KEY_SM, sresult.getSm()); // get shoe model
values.put(KEY_PRICE, sresult.getPrice()); //get shoe price
db.insert(TABLE_SRESULT, null, values);
db.close();
}
public int update(Sresult sresult){
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_DESC, sresult.getDesc()); //get description
values.put(KEY_SA, sresult.getSa()); //get size available
values.put(KEY_CA, sresult.getCa()); //get colours available
values.put(KEY_COO, sresult.getCoo()); //get country of origin
values.put(KEY_SM, sresult.getSm()); // get shoe model
values.put(KEY_PRICE, sresult.getPrice()); //get shoe price
//updating row
return db.update(TABLE_SRESULT, values, KEY_ID + " = ?", new String[] {String.valueOf(sresult.getId())});
}
public Sresult getSresult(int id) {
SQLiteDatabase db = this.getReadableDatabase();
//build query
Cursor cursor = db.query(TABLE_SRESULT, new String[]{KEY_ID, KEY_DESC, KEY_SA, KEY_CA, KEY_COO, KEY_SM, KEY_PRICE}, KEY_ID + "=?",
new String[] {String.valueOf(id)}, null, null, null, null);
if (cursor != null) //if get sticker results get the first one
cursor.moveToFirst();
//build result project
Sresult sresult;
sresult = new Sresult(Integer.parseInt(cursor.getString(0)),
cursor.getString(1), cursor.getString(2), cursor.getString(3), cursor.getString(4), cursor.getString(5), Float.parseFloat(cursor.getString(6)));
return sresult;
}
public List<Sresult> getAllSresults() {
List<Sresult> sresultList = new ArrayList<Sresult>();
String selectQuery = "SELECT * FROM " + TABLE_SRESULT;
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(selectQuery, null);
//looping through all rows and adding to list
if (cursor.moveToFirst()) {
do {
Sresult sresult = new Sresult();
sresult.setId(Integer.parseInt(cursor.getString(0)));
sresult.setDesc(cursor.getString(1));
sresult.setSa(cursor.getString(2));
sresult.setCa(cursor.getString(3));
sresult.setCoo(cursor.getString(4));
sresult.setSm(cursor.getString(5));
sresult.setPrice(Float.parseFloat(cursor.getString(6)));
sresultList.add(sresult);
} while (cursor.moveToNext());
}
return sresultList;
}
public int getSresultsCount(){
String countQuery = "SELECT * FROM " + TABLE_SRESULT;
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(countQuery, null);
cursor.close();
return cursor.getCount();
}
}
Aucun commentaire:
Enregistrer un commentaire