2013-03-06 51 views
0

我有一個表SQLite的複製行

CREATE TABLE rss (_id INTEGER PRIMARY KEY AUTOINCREMENT, title text, body text, img_url text); 

我寫與下面的代碼項目:

public void writeRssModel(ArrayList<RssModel> items){ 
    SQLiteDatabase db = getWritableDatabase(); 
    for (RssModel model : items){ 
     try { 
      ContentValues cv = new ContentValues(); 
      cv.put(DBConst.BODY, model.getBody()); 
      cv.put(DBConst.IMG_URL, model.getImgUrl()); 
      cv.put(DBConst.TITLE, model.getTitle()); 
      db.insert(DBConst.TABLE, null, cv); 
     }catch (Exception e){ 
      e.printStackTrace(); 
     } 
    } 
} 

當我重用這個代碼,行重複;我無法刪除項目,因爲它在後臺線程中工作,在UI線程中,此表上有一個活動的Cursor。我需要更新行。

+0

你試試這個:http://stackoverflow.com/questions/7180441/android-sqlite-update-insert? – 2013-03-06 20:34:36

回答

1

你應該申報title text uniquedb.insertWithOnConflict(DBConst.TABLE, null, cv, SQLiteDatabase.CONFLICT_IGNORE);