2012-02-18 16 views
1

小さな問題があります。 私のアプリケーションには、遅延読み込み画像とJson値を格納するデータベースがあります。 データベースに値を格納することができましたが、格納することができません。2つの異なる方法からデータベースを挿入する方法

これは、データベースにhereとして保存されます。

どのようにしてすべてのエントリをデータベースの先頭から始めることができますか。

ベローが私のコードです。

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    //setContentView(R.layout.main); 
    placeData = new DBHelper(this); 

    try { 
     Images("1","http://media.rightmove.co.uk/31k/30471/29462938 
        /30471_FLE100159_IMG_00_0002_max_200x138.jpg"); 
     Images("2","http://media.rightmove.co.uk/3k/2265/35402969 
        /2265_9897_IMG_00_0000_max_200x138.jpg"); 
     Images("3","http://media.rightmove.co.uk/75k/74944/18863829 
        /74944_OSI1000044_IMG_00_0000_max_200x138.jpg"); 
      } catch (Exception e) { 
      } 
      try { 
     JSONArray properties = null; 
     JSONParser jParser = new JSONParser(); 
     JSONObject json = jParser.getJSONFromUrl(url); 
     try { 
      // Getting Array of Contacts 
      properties = json.getJSONArray(TAG_PROPERTY); 

      // looping through All Contacts 
      for (int i = 0; i < properties.length(); i++) { 
       JSONObject c = properties.getJSONObject(i); 
       String identifier = c.getString(TAG_IDENTIFIER); 
       String price = c.getString(TAG_PRICE); 
       String bedrooms = c.getString(TAG_BEDROOMS); 
       String address = c.getString(TAG_ADDRESS); 
       String propertyType = 
            c.getString(TAG_PROPERTYTYPE); 
       id = id; 
       if (properties != null) { 

        // insert to database 
        insertData(id,identifier, price, bedrooms, 
               address,propertyType); 
       } 

       } 
        } catch (Exception e) { 
       } 

       } catch (Exception e) { 
       } 
       } 

     private void insertData(String id,String identifier, String price, 
      String bedrooms,String address, String propertyType) { 
    // TODO Auto-generated method stub 
    SQLiteDatabase db = placeData.getWritableDatabase(); 
    ContentValues v = new ContentValues(); 
    v.put(DBHelper.C_ID, id); 
    v.put(DBHelper.C_IDENTIFIER, identifier); 
    v.put(DBHelper.C_PRICE, price); 
    v.put(DBHelper.C_BEDROOMS, bedrooms); 
    v.put(DBHelper.C_ADDRESS, address); 
    v.put(DBHelper.C_PROPERTYTYPE, propertyType); 
    db.insert(DBHelper.TABLE, null, v); 
    db.close(); 
} 

private void Images(String id, String url) throws ClientProtocolException, 
     IOException { 
    // TODO Auto-generated method stub 
    DefaultHttpClient mHttpClient = new DefaultHttpClient(); 
    HttpGet mHttpGet = new HttpGet(url); 
    HttpResponse mHttpResponse = mHttpClient.execute(mHttpGet); 
    if (mHttpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { 
     HttpEntity entity = mHttpResponse.getEntity(); 

     if (entity != null) { 

      // insert to database 
      insert(id, EntityUtils.toByteArray(entity)); 
     } 
    } 

} 

private void insert(String id, byte[] image) { 
    // TODO Auto-generated method stub 
    SQLiteDatabase db = placeData.getWritableDatabase(); 
    ContentValues v = new ContentValues(); 
    v.put(DBHelper.C_ID, id); 
    v.put(DBHelper.C_PHOTOS, image); 
    db.insert(DBHelper.TABLE, null, v); 
    db.close(); 

} 

任意のヘルプやアドバイスがappreciated.Thanksあなたはどのような順序で「店のそれをしないでください

答えて

1

になります - あなたがしたい方のために、それらを「取得します」。

select * from gall 
ORDER BY image 

または類似

+0

ランディのおかげで、データベース内のエンティティは、ある特定の財産に属し、私のAINはorder..yesであなたの権利を表示することですが、これは正しい順序を返すことができます。 – SomCollection

+0

一般的に、はい - あなたの出力がどのように見えるかの例を追加してください... – Randy

+0

ありがとうランディー、私が必要とする出力はsimple.the id:1はimage1、identifer1とprice1を持つでしょう。私はすぐにそれを実装します。 – SomCollection

関連する問題