안드로이드 개발 질문/답변
(글 수 45,052)
보통 데이터베이스를 사용할때 SQLiteOpenHelper 를 상속받는
Helper class를 따로 만들어 사용하는거로 알고있는데요..
데이터베이스에 대한 정보는 Helper class의 생성자에서 super를 호출할때 전달해주는거로 보입니다.
그럼 이 super를 호출해줄때 database 가 생성되는 건가요??
super가 상위클래스의 생성자를 호출해준다고 알고있는데 그럼 상위클래스의 생성자에서
데이터베이스를 생성해주는 것인지 궁금합니다.
공지사항은 읽었습니다..
데이터베이스에 대한 정리를 해보다가 데이터베이스와 테이블이 함께 설명된 것들이 많아
정확히 어디서 생성되는지를 찾지 못해서 헤매다 글올립니다..
아직 테스트를 해보지 못했지만.. 지난번 답변도 감사합니다~ ㅎㅎ
Helper class를 따로 만들어 사용하는거로 알고있는데요..
데이터베이스에 대한 정보는 Helper class의 생성자에서 super를 호출할때 전달해주는거로 보입니다.
그럼 이 super를 호출해줄때 database 가 생성되는 건가요??
super가 상위클래스의 생성자를 호출해준다고 알고있는데 그럼 상위클래스의 생성자에서
데이터베이스를 생성해주는 것인지 궁금합니다.
아래 소스코드에서 보면 onCreate에서는 table을 생성하는 SQL 문장만 전달해 주도록 되어있고 private static class DbHelper extends SQLiteOpenHelper { DbHelper (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("DROP TABLE IF EXISTS table1"); onCreate(db); } }
여기서는 table만 생성되는것 같다고 생각되는데요..
데이터베이스가 생성되는 부분과, 테이블이 생성되는 부분이 제가 위에 처럼 말한것과 같은지요..
아니면 함께 생성이 되는지.. 정확히 어디서 생성되는 것인지 궁금합니다..
공지사항은 읽었습니다..
데이터베이스에 대한 정리를 해보다가 데이터베이스와 테이블이 함께 설명된 것들이 많아
정확히 어디서 생성되는지를 찾지 못해서 헤매다 글올립니다..
아직 테스트를 해보지 못했지만.. 지난번 답변도 감사합니다~ ㅎㅎ