본문 바로가기

개발 관련 지식/안드로이드(Android)

[안드로이드] SQLite 사용 시 onCreate, onUpgrade 호출 시점

* SQLite 사용 시 onCreate, onUpgrade 호출 시점


[예시]


public class MyDB extends SQLiteOpenHelper{

  public MyDB(Context context) {

     // 생성자 함수

     super(Context context, String name, CursorFactory factory, int version);

  }


  public void onCreate(SQLiteDatabase db){

     // onCreate 함수

  }


  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion){

     // onUpgrade 함수

  }

}



1. 생성자 함수 호출

: MyDB myDB = new MyDB(this);

=> MyDB 생성자만 호출 / onCreate() 함수는 호출되지 않음


2. onCreate() 함수 호출

: SQLiteDatabase db = myDB.getReadableDatabase();

  SQLiteDatabase db = myDB.getWritableDatabase();

=> MyDB onCreate() 함수 호출


3. onUpgrade() 함수 호출

: super() 메소드에서 마지막 인자 version 값이 상향 조정될때 호출