안드로이드에서 SQLite는 SQLiteOpenHelper를 상속받아 테이블을 처음 생성하는 onCreate, 데이터베이스 오픈과 관련된 onOpen, 데이터베이스를 업그레이드 할때 사용하는 onUpgrade 콜백함수를 재정의 하여 사용할 수 있다. rawQuery를 통해 SELECT연산을 수행할 수 있으며 execSQL을 통해 SELECT를 제외한 다른연산을 수행할 수 있다. 데이터베이스에 접근할때는 cursor라는 포인터를 이용하여 접근한다.
Room? Entity, DAO, Database로 구성되어 있다.
Room은 컴파일하는 시간에 SQL 유효성 검사를 수행한다.
스키마가 바뀌었을 때 영향 받는 SQL 쿼리를 직접 바꾸지 않아도 된다.
상용구 코드 없이 DB 객체를 자바 객체에 매핑한다.
어노테이션을 이용하여 상용구를 줄였다.