私は疑いがあることを明確にしています。どのようにsqlite DBに挿入された最後の値を取得できますか?私はそれのためのコードが必要です。私はこのようなクエリを使用しようとしました:sqliteデータベースに挿入された最後の値を取得する方法
SELECT uname,umessage,utime FROM chatmessage ORDER BY utime DESC limit 1;
私は間違っていますか?私はこの問題で助けが必要です。
ありがとうございます。
私は疑いがあることを明確にしています。どのようにsqlite DBに挿入された最後の値を取得できますか?私はそれのためのコードが必要です。私はこのようなクエリを使用しようとしました:sqliteデータベースに挿入された最後の値を取得する方法
SELECT uname,umessage,utime FROM chatmessage ORDER BY utime DESC limit 1;
私は間違っていますか?私はこの問題で助けが必要です。
ありがとうございます。
値が最後である場合、そのIDは
は、あなたがメッセージテーブルのように、ユーザIDの列を追加し、特定のユーザーによる最後のメッセージのために、この
c = db.rawQuery("SELECT uname,umessage,utime FROM tablename WHERE " +
"Id = (SELECT MAX(Id) FROM tablename); ",null);
ようなクエリを発射することができ、最大でなければなりません
id | userid | message | utime
1 | 1 | wlhf | 3:10
2 | 3 | dfhhfjh | 2:15
3 | 1 | kjfedhr | 4:00
4 | 2 | hejhe | 1:15
5 | 3 | kegekr | 3:30
6 | 1 | wlhf | 3:10
7 | 3 | dfhhfjh | 2:15
8 | 1 | kjfedhr | 4:00
9 | 2 | hejhe | 1:15
10 | 3 | kegekr | 3:30
c = db.rawQuery("
select message from table1 where
userid = 1 ; ",null);
recieve like
ArrayList<String> listMessg = new ArrayList<String>();
cursor = dbm.columnValueofCourse();
cursor.moveToFirst();
startManagingCursor(cursor);
for (int i = 0; i < cursor.getCount(); i++) {
reciv = cursor.getString(cursor
.getColumnIndex("message"));
listMessg.add(reciv_Par);
}
int sizeoflist = listMessg.size();
because in ascending order , the last index
of array list will be the last message of the user
System.out.println("THE LAST MESSAGE BY USER IS " + listMessg.et(sizeoflist -1));
SQLiteDatabaseは挿入された行のIDを返します。このIDをある値で覚えて使用することができます。
long lastId = db.insert(......);
すてきな答えです。うまくいった。私はもう一つ疑いがある。私は個々のバディによって送られた最後のメッセージを取得する必要があります。どのように私はそれを得ることができます。上記のコードを使用して、私は最後の値をsqliteに挿入することができます。同じ方法で、私は個々のバディによって送られた最後の値(メッセージ)を取得する必要があります。この問題で私を助けてもらえますか?ありがとう – user1265623
@ user1265623あなたはあなたのデータベースをどのように扱っているのかわかりませんが、ユーザIDを持っていればそれをメッセージのテーブルの列にして、それを基にしてクエリを発行し、配列最後のインデックスにそのユーザーの最後のメッセージが表示されます –
私はあなたが何を言っているのか明確にはわかりません。あなたは私が与える必要がある質問を簡素化して教えてください。 – user1265623