我有一個Android上的SQLite問題。現在,我從一個服務器拉取JSON對象,解析它,並把每個子對象的表的東西,如姓名,ROW_ID,獨特的ID等使用此代碼:Android SQLite重複元素
public void fillTable(Object[] detailedList){
for(int i=0;i<detailedList.length;++i){
Log.w("MyApp", "Creating Entry: " + Integer.toString(i));
String[] article = (String[]) detailedList[i];
createEntry(article[0], article[1], article[2], article[3], article[4], article[5]);
}
}
createEntry做它聽起來像。它需要6個字符串,並使用cv.put進行輸入。沒問題。
當我嘗試但是他們訂購,通過:
public String[] getAllTitles(int m){
Log.w("MyApp", "getTitle1");
String[] columns = new String[]{KEY_ROWID, KEY_URLID, KEY_URL, KEY_TITLE, KEY_TIME, KEY_TAGS, KEY_STATE};
Log.w("MyApp", "getTitle2");
Cursor c = ourDatabase.query(DATABASE_TABLENAME, columns, null, null, null, null, KEY_TIME);
Log.w("MyApp", "getTitle3");
String title[] = new String[m];
Log.w("MyApp", "getTitle4");
int i = 0;
int rowTitle = c.getColumnIndex(KEY_TITLE);
Log.w("MyApp", "getTitle5");
for(c.moveToFirst();i<m;c.moveToNext()){
title[i++] = c.getString(rowTitle);
Log.w("MyApp", "getTitle " + Integer.toString(i));
}
return title;
}
每個條目實際上有很多重複。我假設與我已同步的次數一樣多。有沒有辦法手動調用onUpgrade方法,該方法會刪除表並創建一個新表,或者更好地清除重複項?
第二個問題,有什麼方法可以通過反向排序嗎?我現在按時間排序,而最早添加的條目是第一個(最小的數字)。有沒有相反的情況?
謝謝。我之前看到過「desc」標籤,但是對於執行其他SQL類的人來說,這不是我。謝謝! – 2012-03-21 06:25:05