2017-05-04 1 views
-1

Android Studio에서 SQLite를 통해 검색 기록을 만들려고합니다. getCount()를 사용하여 SQLite DB에서 정보를 얻으려고하면 은 0을 계속 반환합니다.SQLite getCount()가 0을 반환합니다.

터미널별로 DB에 데이터가 있는지 확인했습니다. 그러나 데이터가있는 결과를 나타 냈습니다. 도와주세요.

public String[][] getResult(){ 
     SQLiteDatabase db = getReadableDatabase(); 
     Cursor cursor = db.rawQuery("SELECT * FROM AlYak_History", null); 

     Log.d("getCount", valueOf(cursor.getCount())); 
     String[][] result = new String[cursor.getCount()][]; 
     cursor.moveToFirst(); 
     while(cursor.moveToNext()){ 
      for(int i = 0 ; i < 12 ; i ++){ 
       result[cursor.getPosition()][i] = cursor.getString(i+1); 
      } 
     } 

     cursor.close(); 
     db.close(); 
     return result; 
    } 
+0

사용 한 String.valueOf –

+0

Log.d위한이 하나 개의 작업 (" getCount ", cursor.getCount()); –

답변

0

DB에 연결 하시겠습니까? 귀하의 생성자는 다음과 같이해야합니다 :

public DatabaseHelper(Context context) { 
    super(context, DATABASE_NAME, null, DATABASE_VERSION); 
} 

그것은 String.valueOf()을해야하지 valueOf

+0

조언 해 주셔서 감사합니다. 예, Helper 및 String.valueOf()를 사용하여 DB에 연결하는 것이 확실합니다. 그러나 여전히 작동하지 않습니다 ... – Campanella

+0

커서 커서 = db.rawQuery ("SELECT * FROM AlYak_History", 새 문자열 [] {});'''그리고 결과를 알려주십시오. – matio

0

public int getResultCount() { 
String countQuery = "SELECT * FROM " + TABLE_NAME; 
SQLiteDatabase db = this.getReadableDatabase(); 
Cursor cursor = db.rawQuery(countQuery, null); 
int cnt = cursor.getCount(); 
cursor.close(); 
return cnt; 

}

관련 문제