私はアンドロイドのExpenseMangerアプリを作っています。私はレコードを挿入しましたが、今度はそれらのレコードを日付順に並べて表示します。どうやってするか?どのようにアンドロイドのsqliteテーブルのレコードの作成日を追加し、後ですべてのレコードを日付順に表示するのですか?
ここに私のコードとデータベースがあります。
作成日を列に自動的に挿入し、後でselect *
ステートメントで正しく使用する方法を教えてください。ありがとう。
public class Databasehelper extends SQLiteOpenHelper
{
public static final String DATABASE_NAME = "items.db";
public static final String TABLE_NAME = "items_table";
public static final String COL_1 = "ID";
public static final String COL_2 = "TYPE";
public static final String COL_3 = "NAME";
public static final String COL_4 = "PRICE";
public Databasehelper (Context context)
{
super (context , DATABASE_NAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase)
{
sqLiteDatabase.execSQL("create table " + TABLE_NAME + "(ID INTEGER PRIMARY KEY AUTOINCREMENT, TYPE TEXT, NAME TEXT, PRICE INTEGER);");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS" + DATABASE_NAME);
onCreate(db);
}
public boolean insertData(String type, String name, String price) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(COL_2, type);
contentValues.put(COL_3, name);
contentValues.put(COL_4, price);
long result = db.insert(TABLE_NAME, null, contentValues);
if (result == -1)
return false;
else
return true;
}
public boolean updateData(String id,String type,String name,String price) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(COL_1,id);
contentValues.put(COL_2,type);
contentValues.put(COL_3,name);
contentValues.put(COL_4,price);
db.update(TABLE_NAME, contentValues, "ID = ?",new String[] { id });
return true;
}
public Integer deleteData (String id) {
SQLiteDatabase db = this.getWritableDatabase();
return db.delete(TABLE_NAME, "ID = ?",new String[] {id});
}
public Cursor getListContents(){
SQLiteDatabase db = this.getWritableDatabase();
Cursor data = db.rawQuery("SELECT * FROM " + TABLE_NAME, null);
return data;
}
}
どうか教えてください。私はアンドロイドに絶対noobです –
文字列のバージョンとintバージョンを作る方法を追加しました。 – Nick
Nick編集ありがとうございます。今私はテーブルのコマンドを作成するタイムスタンプまたはタイムスタンプを追加する必要がありますか?この日までにselect *コマンドで何を書き込むべきですか? –