lundi 12 octobre 2015

search single data in SQLite and display in textview with search field and search button

enter code here

public class DBController extends SQLiteOpenHelper {

private static final String LOGCAT = null;
private static final int database_version = 1;
//private  static final String db_SEIS = "SEIS.db";
//private static final String tbl_equipments = "tbl_equipments";


public DBController(Context applicationcontext) {

    super(applicationcontext, "SEIS.db", null, database_version);  // creating DATABASE
    Log.d(LOGCAT, "Created");
}

//creating tables
@Override
public void onCreate(SQLiteDatabase database) {
    String query;
    query = "CREATE TABLE IF NOT EXISTS tbl_equipments ( Id INTEGER PRIMARY KEY, equipment_id TEXT,description TEXT,details TEXT, responsibility_center TEXT, status TEXT ,date_taken DATETIME)";
    //create_table = "CREATE TABLE" + tbl_equipments + "("+ id + " INTEGER PRIMARY KEY,"+ equipment_id + " TEXT," + description + " TEXT," + details +" TEXT," + date_taken + " DATETIME," + responsible + " TEXT" + ")";
    database.execSQL(query);
}

//upgrading database
@Override
public void onUpgrade(SQLiteDatabase database, int version_old, int current_version) {
    //drop older table if existed
    database.execSQL("DROP TABLE IF EXIST tbl_equipments");
    onCreate(database);
}
public DBController open()throws SQLException{

    return this;
}

public ArrayList<HashMap<String, String>> getAllEquipments() {
    ArrayList<HashMap<String, String>> proList;
    proList = new ArrayList<HashMap<String, String>>();
    String selectQuery = "select *from tbl_equipments";
    SQLiteDatabase database = this.getWritableDatabase();
    Cursor cursor = database.rawQuery(selectQuery, null);
    if (cursor.moveToFirst()) {
        do {
            //Id, Company,Name,Price
            HashMap<String, String> map = new HashMap<String, String>();
            map.put("Id", cursor.getString(0));
            map.put("equipment_id", cursor.getString(1));
            map.put("description", cursor.getString(2));
            map.put("details", cursor.getString(3));
            map.put("responsibility_center", cursor.getString(4));
            map.put("status", cursor.getString(5));
            map.put("date_taken", cursor.getString(6));

            proList.add(map);
        } while (cursor.moveToNext());

        //cursor.close();
    }
    return proList;
}


//get a single row from table
public String getEquipment(String equipment_id){
    Cursor cursor = null;
    equipment_id = "";
    try {
        SQLiteDatabase database = this.getReadableDatabase();
        cursor = database.rawQuery("SELECT description FROM tbl_equipments WHERE equipment_id='" +equipment_id+ "'",null);

        if (cursor.getCount() > 0 ) {
            cursor.moveToFirst();
            equipment_id = cursor.getString(cursor.getColumnIndex("description"));
        }
        return equipment_id;
    }finally {
        cursor.close();
    }
}

}

//code to view result

public class Search_Equipments extends AppCompatActivity{

ImageButton imgbtnsearch;
TextView desc,details;
EditText equipment_id;
DBController controller;
Button btnsearch;
SQLiteDatabase sqLiteDatabase;
String search_name = "mics";
String connection;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.search_update_equiments);

    equipment_id = (EditText)findViewById(R.id.search_name);
    desc = (TextView)findViewById(R.id.desc);
    //details = (TextView)findViewById(R.id.display_email);
    //desc.setVisibility(View.GONE);
    //details.setVisibility(View.GONE);
    btnsearch = (Button)findViewById(R.id.btnsearch);

    controller = new DBController(this);

    btnsearch.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            connection = controller.getEquipment(equipment_id.getText().toString());
            //Toast.makeText(Search_Equipments.this, connection, Toast.LENGTH_SHORT).show();
            desc.setText(connection);
            //asd = controller.onOpen(SQLiteDatabase database);
        }
    });
}

} can someone teach me how to get a single row from table and display it to textview with search field and search button implements with SearchEquipment Activity.

Aucun commentaire:

Enregistrer un commentaire