개발새발 - IT 기술블로그

코틀린에서 Room을 사용할 때 PrimaryKey로 설정한 Id를 자동으로 생성하고 1씩 증가시키는 방법에 대해 알아보겠습니다.

 


 

<kotlin />
@Entity data class MusicEntity( var id: Long, val data1: String, val data2: String, val data3: Int )

 

위의 엔티티 구조로 데이터 클래스를 생성하면 테이블의 필드 값을 입력할 때 id를 직접 선언해주지 않으면 에러가 납니다.

 

아래와 같이 Long 데이터 타입의 Id를 PrimaryKey로 생성하고 Room 라이브러리의 autoGenerate = true 옵션을 적용시켜주면, 

 

Insert 과정에서 id를 직접 입력해주지 않아도 자동으로 생성되며 index를 값으로 가집니다.

 

<kotlin />
@Entity data class MusicEntity( val data1: String, val data2: String, val data3: Int ) { @PrimaryKey(autoGenerate = true) var id: Long = 0 }

 

 

감사합니다.