inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바 ORM 표준 JPA 프로그래밍 - 기본편

상속관계 매핑 질문이 있습니다.

해결된 질문

276

티벳로보

작성한 질문수 48

0

강의 제목 : 상속관계 매핑

시작 시간: 31:36

외래키 참조 무결성 제약 조건을 활용 가능하다.

ITEM.ITEM_ID(PK)와 ALBUM.ITEM_ID(PK,FK)를 쓸수있고,

장점이 주문 테이블에서 외래키 참조로 아이템을 봐야한다면

ITEM_ID만 보면 된다. 다 봐야할 경우 모델링이 이상해진다.

 

이렇게 말씀을 해주셨는데

외래키 참조 무결성 제약조건을 활용 가능하다고 말씀해주시는게

데이터베이스 CASCADE 옵션으로 DELETE같은걸 활용할 수 있다는 의미인가요 ?

 

ITEM_ID만 보면 된다는게, 테이블로 보면 ITEM_ID만 알면 다른 테이블을 확인할 필요 없이

ITEM_ID로 찝어서 조회가 가능하기 때문에 장점이라고 말씀해주신 걸까요 ?

 

시작 시간부터 약 30초간 말씀해주시는게 이해가 안되서 질문을 남겨봅니다.

java jpa

답변 2

2

김영한

안녕하세요. kamser님

인프런 AI 인턴가 답변을 잘 해주었는데요. 거기에 추가로 보충 답변을 남겨드릴께요.

외래키 참조 무결성 제약조건을 활용할 수 있다는 것은 데이터베이스에서 제공하는 제약 조건입니다.

이 제약 조건이 걸리면 FK에 데이터를 저장할 때 반드시 PK에 해당하는 데이터가 존재해야 합니다. 그렇지 않으면 예외가 발생합니다. 이 부분은 외래키 참조 무결성 제약조건으로 검색해보시면 도움이 되실거에요.

예를 들어서 ITEM 테이블에 데이터를 저장할 때 ALBUM 테이블에도 함께 저장을 해야합니다. 이 상황에서 ALBUM 테이블의 FK로 ITEM 테이블에 있는 PK를 외래키 참조 무결성 제약 조건을 걸 수 있습니다. 이렇게 하면 혹시라도 ALBUM의 FK에 ITEM에 없는 PK를 저장하는 실수가 발생하지 않습니다.

감사합니다.

2

티벳로보

답변 감사합니다 !!

참조 제약조건은 알고 있었는데 이게 장점으로 활용될 수 있을까 싶었는데

실무에서 회원 테이블과 회원 상세정보 테이블 같이 반드시 FK가 들어와야하는 경우에 사용할 수있겠네요 답변감사합니다 !!!

 

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

kamser님, 상속관계 매핑에 대한 질문 감사합니다.

강의에서 언급하신 “외래키 참조 무결성 제약조건을 활용 가능하다”는 말씀은 데이터의 일관성을 유지하기 위해 데이터베이스의 제약 조건을 활용할 수 있다는 의미입니다. CASCADE 옵션을 예로 든다면, 엔티티의 상태 변화가 연관된 엔티티에도 영향을 주어 일관성을 유지할 수 있다는 점을 설명하신 것입니다.

“ITEM_ID만 보면 된다”는 말씀은, 예를 들어 ITEM 테이블과 ALBUM 테이블이 있는 상황에서 기본 테이블인 ITEM 테이블의 ITEM_ID를 참조함으로써 연관된 상세 테이블(ALBUM 등)을 별도로 조회하지 않아도 해당 아이템의 정보를 알 수 있다는 장점을 설명하신 것입니다. 즉, 복잡한 조인을 하지 않아도 되기 때문에 모델링 측면에서 보다 단순하고 직관적으로 데이터에 접근할 수 있다는 뜻입니다.

질문에 대한 충분한 답변을 드렸길 바라며, 추가적인 궁금증이 있으시면 언제든지 질문해주시길 바랍니다.

inheritance startegy 선택시 고려사항

0

11

0

Entity 동등성 비교

0

14

1

실무 조언 관련 질문입니다.

0

41

1

H2데이터베이스 파일 생성

0

52

2

서브쿼리 강의에서 ALL 예시 관련 질문드립니다.

0

49

2

수정또는 삭제시 영속성 엔티티에 값이 무조건 있어야 하나요?

0

48

1

JPQL 메소드와 락

0

53

1

Delivery @OneToOne

0

57

1

17강 4~5분대 테이블 값 조회가 안됩니다.

0

89

2

UnsupportedOperationException 발생

0

82

3

H2 Database 연결이 안됩니다.

0

89

2

연관관계 매핑 질문드립니다.

0

82

2

h2데이터베이스 실행오류

0

105

2

persistence.xml

0

103

2

양방향 연관관계에서 연관관계의 주인(mappedBy)을 왜 꼭 정해야 하나요?

0

77

1

영속성 컨텍스트

0

62

1

JPA 프록시

0

90

1

Native Query와 MyBatis

0

63

1

영속성 컨텍스트는 어떤 메모리에 저장되는건가요?

0

84

1

임베디드 타입 예시 코드 관련 질문

0

112

3

명시적 조인에서 별칭을 주면 왜 객체에 접근할 수 있나요

0

91

3

인텔리제이 패키지 커서 단축키 질문

0

106

2

혹시 현재는 ID 데이터 타입이 String이면 안되나요?

0

137

1

양방향 연관관계 시 연관관계 주인을 설정하는 이유

0

68

1