<안드로이드>개발/안드로이드/App

[팁] 안드로이드 SDK로 DB 내용 확인하기

소혼 2010. 7. 8. 23:51
반응형
김선운님에게 도움이 될까 싶어 정리해봅니다.

안드로이드는 sqlite3을 쓰는데 sqlite3이 리눅스에서는 정말 사용하기 편하지만 윈도우에서 사용하려면 빌드까지 해야 하는 꽤 불편할 수 있습니다.

하지만 안드로이드 에뮬레이터 안에는 이미 sqlite가 있습니다.
이것을 활용하여 내가 만든 DB가 어떤 상태에 있는지 확인해 보고자 합니다.

1. 먼저 콘솔 창을 하나 띄웁니다.
시작 => 실행(R)을 클릭하고 cmd를 입력

2. 안드로이드 SDK가 있는 경로로 이동합니다.
   (저의 경우 h:\project\android2\android-sdk-windows\tools를 사용합니다.)
> cd h:\project\android2\android-sdk-windows\tools
> h:

3. adb 쉘에 접속합니다.
h:\project\android2\android-sdk-windows\tools> adb shell
#

4. 자신이 만든 프로젝트가 있는 곳으로 이동합니다.
이 때 리눅스 명령어들을 사용해야 합니다. 몇가지 정도만 알고 쓰시면 유용합니다.
 ls : 현재 폴더의 파일, 서브 폴더 목록을 출력합니다.
      ls는 권한이 없는 곳에서 수행하면 Permission denied 에러가 날 수 있습니다.
cd [폴더명] : 폴더명으로 이동합니다.
pwd : 현재 폴더 위치를 출력합니다.

경로는 /data/data/패키지명 입니다.
이전 DB 예제에서는 이 아래에 databases라는 폴더를 하나 더 만들었으므로 한단계 더 아래에 파일이 존재합니다.

# cd /data/data/com.sohon.sample
# ls
ls
play_seq.dat
shared_prefs
databases
lib
#

5. sqlite를 통해 데이터베이스 파일을 엽니다.
# sqlite3 databases/lecture.db
sqlite3 databases
SQLite version 3.5.9
Enter ".help" for instructions
sqlite>

6. sql을 통해 정보를 확인합니다.
sqlite> select * from sqlite_master;
select * from sqlite_master;
table|lecture|lecture|2|CREATE TABLE lecture (_id integer primary key, eng_sente
... 기타 테이블 커럼 정보들)
sqlite>

허접한 글이지만, 도움이 되셨다면 아래 손가락 꾹 눌러주세요.
반응형