2011-06-15 8 views
1

SQLite 데이터베이스를 만들려고합니다. 작성 방법,Android SQLite 데이터베이스가 채워지지 않습니다.

static final String CREATE_BASE_TABLE ="create table if not exists tableData (" 
     + "id INTEGER PRIMARY KEY," 
     + "name TEXT," 
     + "image TEXT," 
     + "var1 TEXT," 
     + "var2 TEXT," 
     + ");"; 

하지만 execSQL 반환 success=false :

private static class DatabaseHelper extends SQLiteOpenHelper { 

    @Override 
    public void onCreate(SQLiteDatabase db) { 

     db.execSQL(CREATE_BASE_TABLE); 
    } 

} 

SQL 문자열 호출 (생성자 및 업그레이드 기능은 그 개인 클래스뿐만 아니라에서 구현) 디버거와 중단 점에 의해 드러난다.

파일 탐색기에서 데이터베이스 폴더에 data이 생성 된 것을 볼 수 있습니다. 내 로컬 컴퓨터에서 해당 파일을 열고 이 아닌 tableData이라는 테이블 만보고 내 필드가 보이지 않습니다!

내 방법으로 테이블을 제대로 채울 수 있도록 수정하려면 어떻게해야합니까? 쿼리에 구문 문제가 있습니까?

+1

logcat에 오류 메시지가 표시됩니까? – Noel

답변

1

매우 미묘하지만 오류는 create table 명령에 있습니다. 그냥 있어야한다, 대신

+ "var2 TEXT," 

:이 줄은 쉼표가 없어야

+ "var2 TEXT" 

을 당신이 정의하는 마지막 열 때문이다.

+0

좋아요, SQL 쿼리 문자열은 세미콜론으로 끝납니다, 맞습니까? – CQM

+2

성명 끝에는 세미콜론이 필요하지 않습니다. –

관련 문제