2017-07-15 73 views
-1

這是否會返回多個ID'S如果有多個排白衣相同的值(dataClicked)在COL_4? COL_1 = 「ID」;返回多個ID時,有在數據庫中的相同值

 public int getDateId(String dateClicked) { 

     int dateID=0; 
     String last_query = "SELECT " + COL_1 + " FROM " + TABLE_NAME + " WHERE " + COL_4 + " = '" + dateClicked + "'"; 
     Cursor c = database.rawQuery(last_query, null); 
     if (c != null && c.moveToFirst()) 
     { 
      dateID = c.getInt(0); 
     } 
     c.close(); 
     return dateID; 
    } 

如果它不是我可以存儲在數組中的值?我怎麼能這樣做

+0

您的方法是否會返回多個值?不可以。你能將它存儲在一個數組中嗎?是。 –

+0

你能否解釋是返回數組多個值,並將其存儲的方法,然後返回呢? –

+0

第1步:創建一個數組。第2步:填充它。第3步:宣佈勝利。 –

回答

1

如果你有多個COL_4dateClicked相同的值,那麼將返回多個COL_1。您可以將它們添加到列表中,如下所示:

public List<Integer> getDateIds(String dateClicked) { 
    List<Integer> ids = new ArrayList<>(); 

    String last_query = "SELECT " + COL_1 + " FROM " + TABLE_NAME + " WHERE " + COL_4 + " = '" + dateClicked + "'"; 
    Cursor c = database.rawQuery(last_query, null); 
    c.moveToFirst(); 
    while (!c.isAfterLast()) { 
     ids.add(c.getInt(0)); 

     c.moveToNext(); 
    } 
    c.close(); 
    return ids; 
} 
+0

我怎樣可以得到的ArrayList?就像一個方法使用它,如果它是一個正常的陣列我會IDS [數字],我該怎麼辦呢白衣呢? –

+0

和!res.isAfterLast是給我一個錯誤 –

相關問題