【问题标题】:How to retrieve datas from inserted record to display in another activity android?如何从插入的记录中检索数据以显示在另一个活动 android 中?
【发布时间】:2016-02-15 08:05:30
【问题描述】:

您好,我创建了表格来插入记录,即姓名、消息和时间。我插入成功,但如何检索插入的数据以显示在另一个活动中。这是代码。

//this i have done in Activity A:
  ContentValues userValues = new ContentValues();
            //name of customer
            userValues.put("from_user",          Application.returnEmptyStringIfNull(userName));
            userValues.put(Constants.LAST_MSG, msgBody);
            userValues.put(Constants.CHAT_TIME, msgTime);
            if(AAEDatabaseHelper.checkIDStatus(msgTo,         Constants.TABLE_LIVE_CHAT, Constants.CUSTOEMR_ID)){
                String whereClause = Constants.CUSTOEMR_ID + "='" +    msgTo
                        + "'";
                AAEDatabaseHelper.updateValues(Constants.TABLE_LIVE_CHAT,
                        userValues, whereClause);
            }
            else {
                userValues.put(Constants.CUSTOEMR_ID, msgTo);
                AAEDatabaseHelper.insertValues(Constants.TABLE_LIVE_CHAT,
                        userValues);
            }

AAEDatabaseHelper:

 private static final String TEXT_NOT_NULL = " text not null ",
        TEXT = " text , ", TEXT_PRIMARY_KEY = " text primary key",
        CREATE_TABLE_STRING = "create table if not exists ";

private static final String CREATE_TABLE_LIVE_CHATS= CREATE_TABLE_STRING
        + Constants.TABLE_LIVE_CHAT + "(" + Constants.CUSTOEMR_ID + TEXT_PRIMARY_KEY + " , " + CHAT_COLUMN_FROM_USER_NAME
        + TEXT + Constants.CHAT_TIME + TEXT + Constants.LAST_MSG +" text ) ";


   public static boolean checkIDStatus(String id, String tableName,String   columnName) {
    LogMessage.d("TABLE_NAME", tableName);
    Cursor cursor = null;
    cursor = dbHelper.query(tableName, null, columnName + "=?",
            new String[] { id }, null, null, null);
    boolean status = false;
    try {
        if (cursor != null) {
            if (cursor.getCount() > 0)
                status = true;
            cursor.close();
        }
    } catch (Exception e) {
        LogMessage.e(Constants.TAG, e);
    }
    return status;
}

在另一个活动 B 中: // 如何检索插入的数据以显示在文本中。 插入的数据是用户名、消息、时间.customerid。

【问题讨论】:

    标签: android mysql android-database content-values


    【解决方案1】:

    您使用 contentValue 存储此数据的方式。同样的方式,您可以检索游标中的数据并将其存储在 contectValue 中;以下示例显示了如何获取数据然后存储在 contentValues 中。

    Cursor c = db.query(tableName, 
                tableColumn, 
                where, 
                whereArgs,
                groupBy,
                having,
                orderBy);
    
    ArrayList<ContentValues> retVal = new ArrayList<ContentValues>();
    ContentValues map;  
    if(c.moveToFirst()) {       
       do {
            map = new ContentValues();
            DatabaseUtils.cursorRowToContentValues(c, map);                 
            retVal.add(map);
        } while(c.moveToNext());
    }
    
    c.close();  
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-12
      • 1970-01-01
      • 2021-04-03
      • 2020-12-14
      相关资源
      最近更新 更多