KotlinでのAndroid開発でRoom
の主キーを複数設定する方法について紹介します。
Room
はAndroid Jetpack
の一部であり、SQLite
を簡単に扱うためのライブラリです。
データベースのテーブルはEntity
で定義します。
ここで、複合主キーを設定したい場合、@Entity
アノテーションの引数で、primaryKeys = []
に設定します。
1import androidx.room.ColumnInfo
2import androidx.room.Entity
3
4@Entity(tableName = "table", primaryKeys = ["main_id", "sub_id"])
5data class Entity(
6 @ColumnInfo(name = "main_id")
7 val mainId: Int,
8 @ColumnInfo(name = "sub_id")
9 val subId: Int,
10 val name: String
11)
上のようにすることで、main_id
とsub_id
を主キーに設定できます。
今回はRoom
の主キーを複数設定する方法について紹介しました。以上で記事を終わりにします。