2분24초
378
작성한 질문수 107
FAVORITE_FOOD랑 ADDRESS에서
MEMBER_ID가 FK인건 알겠는데 어떻게 PK가 되는거죠?
@JoinColumn으로 외래키랑 매핑하는건 알겠는데
MEMBER_ID가 PK 되는 과정이 궁금합니다.
답변 1
0
안녕하세요. alrnr3521님
데이터베이스 테이블에는 항상 PK가 필요합니다.
예를 들어서 FAVORITE_FOOD에서 MEMBER_ID를 PK로 잡지 않으면 FOOD_NAME만 PK로 잡게 되는데요. 이렇게 되면 다른 사용자는 같은 음식 이름을 가질 수 없겠지요?
혹시 관련 내용이 잘 이해가 되지 않으면 데이터베이스 기본에 대한 학습이 필요합니다.
도움이 되셨길 바래요^^
0
근데 7분39초에 보면 Member테이블은 아래에 primary key (MEMBER_ID)로 PK가 생성됐는데 FAVORITE_FOOD는 PK를 언제잡는건가요?
0
안녕하세요~ 제 생각에 영한님 말씀을 정리하자면 일단 하나의 테이블은 하나의 pk만 들고 있을 수 있어요. 근데 하나의 칼럼이 하나의 pk가 되는 건 아니에요. 2개의 칼럼이 조합되어서 하나의 pk로 쓰일 수 있거든요
create table test(
id int auto_increment,
food varchar(255),
constraint test_PK primary key(id,food)
)이렇게 말이죠
이렇게 되었을 땐 아이디 + 음식 = 하나의 pk로 잡혀서 여러 유저의 음식 이름이 중복 되어도 아이디 값이 다르니 값이 허용 되는거에요. 음식 이름으로만 pk를 잡으면(테이블은 하나의 pk를 무조건 들고 있어야 함 ) 서로 다른 유저가 같은 음식을 좋아할 수 없겠지요.
근데 jpa 로 쿼리를 날려보면 이렇게 pk를 설정하는 부분은 보이지 않아요 이건 따로 ddl에서 설정을 해야해요.
벌크연산에서 member.getAge 호출 시 영속성 컨텍스트에서 데이터를 가져오는건가요?
0
58
2
inheritance startegy 선택시 고려사항
0
42
1
Entity 동등성 비교
0
47
1
실무 조언 관련 질문입니다.
0
68
1
H2데이터베이스 파일 생성
0
78
2
서브쿼리 강의에서 ALL 예시 관련 질문드립니다.
0
70
2
수정또는 삭제시 영속성 엔티티에 값이 무조건 있어야 하나요?
0
63
1
JPQL 메소드와 락
0
63
1
Delivery @OneToOne
0
71
1
17강 4~5분대 테이블 값 조회가 안됩니다.
0
104
2
UnsupportedOperationException 발생
0
97
3
H2 Database 연결이 안됩니다.
0
103
2
연관관계 매핑 질문드립니다.
0
95
2
h2데이터베이스 실행오류
0
116
2
persistence.xml
0
121
2
양방향 연관관계에서 연관관계의 주인(mappedBy)을 왜 꼭 정해야 하나요?
0
90
1
영속성 컨텍스트
0
77
1
JPA 프록시
0
107
1
Native Query와 MyBatis
0
83
1
영속성 컨텍스트는 어떤 메모리에 저장되는건가요?
0
97
1
임베디드 타입 예시 코드 관련 질문
0
126
3
명시적 조인에서 별칭을 주면 왜 객체에 접근할 수 있나요
0
103
3
인텔리제이 패키지 커서 단축키 질문
0
113
2
혹시 현재는 ID 데이터 타입이 String이면 안되나요?
0
156
1





