アンドロイドの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クラスを実装している人が私のものでした。ありがとう! –