2014-03-02 51 views
0

我正在使用幾個rawQueries來解析Android中的表中的數據。下面的代碼工作正常,並返回表中最低的rowid。在Android中使用rawQuery訪問記錄,然後顯示

public void firstRecord(View v){ 
    Cursor c = db.rawQuery("SELECT * FROM surveyDB WHERE rowid = (SELECT MIN(rowid) FROM surveyDB)",null); 
    c.moveToFirst(); 
    szList.add(c.getString(0)); 

    Toast.makeText(getApplicationContext(), "Sucessful Event. szRowid is: " +szList +".", Toast.LENGTH_LONG).show(); 
} 

我有兩個問題,他們都是非常基本的:1)什麼是擴展上面的代碼來創建語言在特定的rowid捕捉到其他列的內容在此表中的最佳方式,( rowid,sampler,species,place),並將其顯示在我的應用程序中?像這樣的事情也許:

((EditText)findViewById(R.id.edSpecies)).setText(""); 

與適當的參考.setText()代替「」?

回答

0
//Goes to the first record in the dataset 
public void firstRecord(View v){ 
    Cursor c = db.rawQuery("SELECT * FROM surveyDB WHERE rowid = (SELECT MIN(rowid) FROM surveyDB)",null); 
    c.moveToFirst();  
    ((EditText)findViewById(R.id.edRowid)) 
    .setText(c.getString(0)); 
    ((EditText)findViewById(R.id.edSpecies)) 
    .setText(c.getString(1)); 
    ((EditText)findViewById(R.id.edArea)) 
    .setText(c.getString(2)); 
    ((EditText)findViewById(R.id.edSampler)) 
    .setText(c.getString(3)); 
} 
0
String TABLE_SURVEY = "surveyDB"; 
String COL_ROW_ID = "rowid"; 
String COL_SAMPLER = "sampler"; 
String COL_SPECIES = "species"; 
String COL_PLACE = "place"; 

public ArrayList<SurveyRecord> getSurveyRecords() 
{ 
    ArrayList<SurveyRecord> records = new ArrayList<SurveyRecord>(); 
    String query = "SELECT * FROM " + TABLE_SURVEY; 
    query += " WHERE " + COL_ROW_ID = " SELECT MIN (" 
    query += COL_ROW_ID + ") FROM " + TABLE_SURVEY; 
    Cursor c = db.rawQuery(query,null); 
    if(Cursor.moveToFirst()) 
    { 
      do{ 
       String sampler = c.getString(cursor.getColumnIndex(COL_SAMPLER)); 
       String species= c.getString(cursor.getColumnIndex(COL_SPECIES)); 
       String place = c.getString(cursor.getColumnIndex(COL_PLACE)); 
       String rowId = c.getString(cursor.getColumnIndex(COL_ROW_ID)); 
       records.add(new (rowId,species,place,sampler)); 
      }while(c.moveToNext()) 
    } 
    c.close(); 
} 

public class SurveyRecord{ 
     String mRowId; 
     String mSpecies; 
     String mPlace; 
     String mSampler; 

     public SurveyRecord(String rowId,String species,String place,String sampler) 
      { 
      this.mRowId = rowId; 
      this.mSpecies = species; 
      this.mPlace = place; 
      this.mSampler = sampler; 
      } 

} 
相關問題