Android Sqlite 관련 질문드립니다.

조회수 1438회

private void recorddbInit() { SQLiteDatabase db = null; if (db == null) { db = openOrCreateDatabase("my_db.db", SQLiteDatabase.CREATE_IF_NECESSARY, null); }

    Cursor c = db.rawQuery("SELECT name FROM sqlite_master WHERE type='table'", null);

    if (c.moveToFirst()) {
        while ( !c.isAfterLast() ) {
              Cursor d = db.rawQuery("SELECT COUNT(idx) FROM " + c.getString(0), null);
              examArr.add(new ExamRowData(c.getString(0),Integer.toString(d.getcount())));
              c.moveToNext();
        }
    }

    c.close();
    db.close();
    Log.d("tak", "DB생성완료");
}

현재 사용중인 메소드입니다.

1차 목표인 sqlite내에 존재하는 테이블목록을 불러오는 것은 성공했습니다.

2차 목표는 각 테이블마다의 행 갯수를 불러오는 것입니다.

2차목표를 Cursor d를 이용해 getCount하려 하니 android_metadata와 sqlite_sequence에 idx 컬럼이 없어 에러가 발생합니다.

c.getCount나 c.getColumcount는 테이블의 갯수를 반환하더군요...

도움을 요청합니다.

  • (•́ ✖ •̀)
    알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)