2014-04-01 4 views
1

나는 안드로이드 프로그래밍 꽤 새로운 오전 여기에 내 첫 번째 sqlite 데이터베이스를 만들려고합니다. 매번 insert() - Method를 호출 할 때마다 "(1) no such table : songs.db"오류가 발생합니다. 이 오류를 검색했지만 해결책을 찾을 수 없습니다.안드로이드 SQLite (1) 그런 테이블이

public class HearOpenHandler extends SQLiteOpenHelper { 

public static final String TABLE_SONGS = "songs"; 
public static final String COLUMN_ID = "_id"; 
public static final String COLUMN_INTERPRET = "interpret"; 
public static final String COLUMN_TITLE = "title"; 
public static final String COLUMN_URI = "uri"; 

private static final String DATABASE_NAME = "songs.db"; 
private static final int DATABASE_VERSION = 2; 

private static final String DATABASE_CREATE = "create table " 
     + TABLE_SONGS + "(" 
     + COLUMN_ID + " integer primary key autoincrement, " 
     + COLUMN_INTERPRET + " text not null, " 
     + COLUMN_TITLE + " text not null, " 
     + COLUMN_URI + " text not null);"; 

private static final String DATABASE_DROP = "drop table if exists " + TABLE_SONGS; 

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


@Override 
public void onCreate(SQLiteDatabase db) { 
    db.execSQL(DATABASE_CREATE); 
} 


@Override 
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
    db.execSQL(DATABASE_DROP); 
    onCreate(db); 
} 


public void insert(String interpret, String title, String uri) { 

    long rowId; 

    // Open database 
    SQLiteDatabase db = getWritableDatabase(); 

    // Data which should be stored 
    ContentValues values = new ContentValues(); 
    values.put(COLUMN_INTERPRET, interpret); 
    values.put(COLUMN_TITLE, title); 
    values.put(COLUMN_URI, uri); 

    // insert in database 
    rowId = db.insert(DATABASE_NAME, null, values); 

    if(rowId == -1) 
     Log.d(HearOpenHandler.class.getName(), "Error while inserting values into database"); 

} 

} 

안부

답변

2

rowId = db.insert(DATABASE_NAME, null, values); 

아마 행이 테이블 내부에 의미 삽입

rowId = db.insert(TABLE_SONGS, null, values); 
1

해야한다 : 여기 내 클래스입니다. 삽입 쿼리가 오류를 설명하는 Db를 가리키고 있습니다. 그 테이블 이름을 찾고, songs입니다

db.insert(TABLE_NAME, null, values); 

-songs.db 대신

0

이전의 답변이 정확하지만, 일식의 끝에서 눈을 가지고 당신의 마음이 팁을 유지,이 참조 :

eclipse help

관련 문제