소스는 메인클래스입닏.
package com.ics;
import com.ics.DBManager;
import android.os.Bundle;
import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.view.Menu;
import android.widget.LinearLayout;
import android.widget.TextView;
public class MainActivity extends Activity {
TextView textv1,textv2,textv3,textv4,textv5;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
DBManager dManager = new DBManager(this);
SQLiteDatabase db = dManager.getWritableDatabase();
db = SQLiteDatabase.openDatabase("data/data/com.ics/databases/sstdb.db", null, SQLiteDatabase.OPEN_READWRITE);
textv1 = (TextView)findViewById(R.id.textView1);
textv2 = (TextView)findViewById(R.id.textView2);
textv3 = (TextView)findViewById(R.id.textView3);
textv4 = (TextView)findViewById(R.id.textView4);
textv5 = (TextView)findViewById(R.id.textView5);
Cursor cursor;
cursor = db.rawQuery("SELECT * FRPM common_cold", null);
while(cursor.moveToNext()){
textv1.append(cursor.getString(0));
textv2.append(cursor.getString(1));
textv3.append(cursor.getString(2));
textv4.append(cursor.getString(3));
textv5.append(cursor.getString(4));
}
cursor.close();
db.close();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
저 text1~5부분이 출력하는부분인데 실행을 하면 항상오류가 납니다.
db에 내용은 들어가는데, 출력이 안되는거같아요 왜그럴까요 ㅠㅠ
도움을 부탁드립니다^.^
ps. append를 setText로 바꾸어도 안되요 ㅠ
에러메세지가 같이 있으면 좋을 것 같습니다.
try{
cursor = db.rawQuery("SELECT * FRPM common_cold", null);
while(cursor.moveToNext()){
textv1.append(cursor.getString(0));
textv2.append(cursor.getString(1));
textv3.append(cursor.getString(2));
textv4.append(cursor.getString(3));
textv5.append(cursor.getString(4));
}
cursor.close();
db.close();
} catch(Exception e) {
Log.d("error", e+"");
혹은
토스트메시지
}
로 익셉션 에러를 뽑아내시면 대충 무슨 에런지 알 수 있습니다.
그리고 데이터베이스 각 컬럼 속성이 모두 TEXT 값인지 확인해보세요. 아마 INTEGER나 기타의 경우 cursor.get자료형(인덱스)+"" 식으로 파싱해줘야 될 수도 있습니다.
--------- 치면서 알아낸건데 쿼리문이 잘못되었네요
"SELECT * FRPM common_cold" 에서 FRPM이 아니라 FROM으로 수정해보세요 :)
에러 메세지랑 같이 올려주시면 알기 쉬울텐데 DBManger클래스가 어떻게 구현되있는지 모르니 답변드리기가 힘드러요