2012-02-08 78 views
1

我有這個SQLite包含一些'項目'。每個'Project'及其來自SQLite數據庫表的屬性都顯示在一個活動中。我想要做的是,點擊活動內的按鈕時,它會更新該「項目」的C_FAVORITE行。Android:更新表格行SQL

我怎麼能這麼做?我需要在下面的更新方法中使用哪些參數?

public void makeFavorite() { 
Database.Project.C_FAVORITE.update(.......); 
} 

我這是怎麼顯示在活動項目的屬性:

public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.project); 

     loader = new ImageLoader(this); 
      Intent intent = getIntent(); 
      if (intent != null) { 
       Uri uri = intent.getData(); 
       if (uri != null) { 
        final Cursor cursor = managedQuery(uri, new String[] { 
          BaseColumns._ID, Database.Project.C_PROJECTTITLE, Database.Project.C_ORGANIZATIONTITLE, 
          Database.Project.C_PROJECTDESCRIPTION,Database.Project.C_BIGIMAGE,Database.Project.C_DONATIONAMOUNT,Database.Project.C_ADDRESS,Database.Project.C_WEBSITE,Database.Project.C_SHORTCODE,Database.Project.C_KEYWORD,Database.Project.C_PRICE,Database.Project.C_CAMPAIGNID,Database.Project.C_PAYPALEMAIL,Database.Project.C_ELVAVAILABLE}, null, null, null); 

        if (cursor == null) { 
         finish(); 
        } else { 
         if (cursor.moveToFirst()) { 
          ImageView img = (ImageView) findViewById(R.id.project_image); 
          TextView project_title = (TextView)findViewById(R.id.txt_project_title); 
           project_title.setText(cursor.getString(1)); 

......

+0

如何顯示錶格?你使用ORM(ormlite)作爲你的數據庫嗎?或者你有dbhelper類來運行你的查詢/更新? – 2012-02-08 11:45:00

+0

我得到DBHelper類,我同步我的表與服務器上的JSON文件 – hectichavana 2012-02-08 11:47:24

+0

第一次讀書,學習如何問一個問題......沒有人知道Database.Project.C_FAVORITE是什麼... prolly它是一個字符串...字符串沒有更新方法...我必須再說一遍...編程它不適合你...你打算在沒有基本知識的情況下構建應用程序 – Selvin 2012-02-08 11:50:06

回答

7

您可以嘗試如下:

public SQLiteDatabase sqd; 

//Create connection of database 

public void makeFavorite(String fieldname,String c_fav_value) { 
ContentValues cv = new ContentValues(); 
cv.put(fieldname,c_fav_value); 
int i= sqd.update(table_name, cv, where, where_clause); 
} 

如果沒有where子句可以傳遞空在那裏。

0

的一種方法是添加標籤按鈕,搶標記來自makeFavourite()-方法。它的完成方式完全取決於你的應用程序結構,其中你沒有告訴我們任何有關的信息。

+0

我可以,但它會是所有代碼類的帖子的一個很長的地獄 – hectichavana 2012-02-08 11:58:05