@Entity(tableName = "tb_picture", indices = arrayOf(Index(value = arrayOf("id"))),
foreignKeys = arrayOf(ForeignKey(
entity = Task::class, parentColumns = arrayOf("id"), childColumns = arrayOf("id"),
onUpdate = ForeignKey.CASCADE,
onDelete = ForeignKey.CASCADE
))
)
자식 테이블에 인덱스 작성
부모 테이블이 수정될 경우 전체 테이블 스캔을 피하기 위해서
*인덱스가 없는 경우 RoomWarnings 경고 출력
관련 제약 조건
No Action (value: 1): default, 아무 것도 하지 않음
Restrict (value: 2): 하위 테이블에서 참조하고 있는 상위 테이블 값 변경 불가능 지정
Set Null (value: 3): 참조하는 상위 테이블의 값이 변경되거나 삭제된 경우, 하위 테이블 값을 모두 null로 변경
set Default (value: 4): 테이블 생성시 지정한 기본 값으로 변경
Cascade (value: 5): 참조하는 상위 테이블의 값이 변경되거나 삭제된 경우, 하위 테이블 값을 동일하게 변경하거나 삭제
반응형
'메모 log (간단메모) > mobile' 카테고리의 다른 글
'Event 등록' ACC (0) | 2020.03.18 |
---|---|
'stetcho' 디버깅 (0) | 2020.03.01 |
'permission' 권한 요청 (0) | 2020.02.20 |
navigation 이용시 label 변경 (0) | 2020.02.16 |
setHasOptionsMenu(true) (0) | 2020.02.08 |