我正在设计一个应用程序,因为我将传入的消息存储在我自己创建的数据库中,并且从我的应用程序中显示这些消息。 为此,我使用此代码, 要插入数据,
mydb = openOrCreateDatabase("db",MODE_PRIVATE, null);
mydb.execSQL("CREATE TABLE IF NOT EXISTS sms_inbox (SMS_TEXT varchar , SENDER_NUMBER varchar );");
mydb.execSQL("INSERT INTO sms_inbox VALUES('" + stBody + "', '" + stPhoneNumber + "');");
要阅读数据,
Cursor c = mydb.rawQuery("SELECT * from sms_inbox", null);
然后我显示这些消息,
所以现在我的问题是我想根据电话号码存储这些消息, 例如,
phoneno.-12345 “这里将显示12345的所有消息” 电话号码-23456 “这里将显示23456的所有消息”
答案 0 :(得分:2)
那么,您可以将这些消息存储为sms_inbox
表中的另一个条目,但是存储时间戳以便能够区分每条消息也会有所帮助。
当您查询时,您可以将电话号码作为您感兴趣的电话号码:SELECT * from sms_inbox where 'SENDER_NUMBER' = '?'
或者您可以按SENDER_NUMBER排序选择:SELECT * from sms_inbox order by 'SENDER_NUMBER' desc;
最后,这一切都取决于你拥有的用例。您还可以使用另一个表来仅保留数字的消息并映射一对多关系。