sqlopenhelper를 사용해 데이터베이스를 생성하게될 경우에, 보통 "data/ data / 패키지명 / db / 데이터베이스파일"로 생성이 되게 된다.
이 경로는 내가 원하는 곳으로 바꿀 수는 없을까?
이는 다음과 같이 하면 된다.
생성자에서 filePath만 새로 잡아주면 됩니다.
예 >
public static final String FILE_PATH = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + SQLITE_FILE;
public DBOpenHelper(Context context){
super(context, FILE_PATH, null, DB_VERSION);
}
자동 생성되는, onCreate, onUpdate에 있는 내용은 동일하게 쓰셔도 무방합니다.
저의 풀소스,
public class DBOpenHelper extends SQLiteOpenHelper {
private static final int DB_VERSION = 1;
public DBOpenHelper(Context context){
super(context, Constants.FILE_PATH, null, DB_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(getCreateCategoryTableString());
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + DBConstants.TABLE_NAME);
onCreate(db);
}
private String getCreateCategoryTableString(){
return "CREATE TABLE "+ DBConstants.TABLE_NAME +" ( "
+ _ID + " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ DBConstants.ID + " INTEGER NOT NULL, "
+ DBConstants.TITLE_KOR + " TEXT NOT NULL, "
+ DBConstants.ENG + " TEXT NOT NULL, "
+ DBConstants.CODE_NUM + " TEXT NOT NULL, "
+ DBConstants.SDATE + " TEXT NOT NULL ) ; ";
}
}
참조 : 2011/02/08 - [Programming/android] - android에서 외부(sdcard) db를 열려면?
'Programming > android' 카테고리의 다른 글
현재실행중인 액티비티 구하기 (0) | 2011.10.13 |
---|---|
티스토어 부분 유료화 결제 검수 방법 변경 (0) | 2011.09.25 |
[VideoView] 로컬 비디오파일 설정 (0) | 2011.08.04 |
screen on / off (0) | 2011.07.12 |
color를 xml로 사용하기. (1) | 2011.06.24 |