@JoinColumn을 쓰는 경우와 안쓰는 경우의 차이
75
54 asked
@JoinColumn을 명시하는 경우가 있고 그렇지 않은 경우가 있는데
무슨 차이인가요?
단순히 아래처럼 컬럼 명을 명시해주기 위해서 @JoinColumn이 사용되는 걸까요?@JoinColumn({ name: 'author_id' })
Answer 1
0
안녕하세요, 인프런 AI 인턴입니다. oridori2705님.
@JoinColumn 데코레이터는 TypeORM에서 관계를 설정할 때 사용됩니다. 주로 외래 키를 명시하기 위해 사용되며, 외래 키 이름을 명확히 정의하고 싶을 때 매우 유용합니다. @JoinColumn을 사용하지 않을 때 TypeORM은 자동으로 관계 칼럼의 이름을 생성합니다. 하지만, @JoinColumn을 명시하면 개발자가 설정한 이름으로 외래 키가 생성되어, 데이터베이스 스키마를 더 명확하게 정의할 수 있습니다.
@JoinColumn을 사용하는 경우
- 외래 키 명시: 외래 키의 컬럼명을 명확히 하고 싶다면 @JoinColumn을 사용합니다.
- 다중 키 설정: 복합 키 (composite key)를 사용할 경우 @JoinColumn으로 각 컬럼의 이름을 지정할 수 있습니다.
- 관계 설정 명확화: 두 테이블 간의 관계를 선명하게 보여주고 싶을 때 사용합니다.
관련된 질문이 여기 있습니다. 질문에서는 외래 키 설정을 포함하여 관계 설정에 대한 다양한 의견을 확인할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
cascade 질문
0
35
1
@types/bcrypt 설치과정이 누락된것같습니다.
0
41
1
process.env port key 에러
0
43
1
추상화
0
45
1
[공유] DTO optional 필드가 undefined로 잡혀 TypeORM 조건이 깨지는 현상
0
92
2
where 키워드가 들어가는 메서드와 아닌 메서드
0
53
1
BearerTokenGuard에서 db를 조회해서 유저 정보를 불러오는 이유?
0
66
1
app.controller app.service 는 지워도되나요?
0
67
1
포트 3000에서 listen하는 곳까지 넘어가지 않습니다.
0
62
1
PickType 사용 시 `as const`를 꼭 사용해야 하나요?
0
99
2
socket connect 오류
0
95
2
강의를 들으면서 궁금한 점
0
95
2
DELETE 요청의 반환값은 어떤 기준으로 결정하는 게 좋을까요?
0
55
2
커리큘럼 질문
0
95
2
put 요청은 언제
0
88
3
typeorm VS prisma
0
339
2
142 강의 > 4:00 > 포스트멘 활용 관련 질문 드립니다.
0
74
2
User 데코레이터 버그 수정 전달드립니다.
0
64
1
git 주소 부탁드립니다.
0
109
2
nest g resource 명령어 에러
0
97
2
로그인 엔드포인트 관련 질문
0
81
2
yarn으로 express 다운 후 node 2_server.js 실행 안되는 경우
0
143
3
"흔히 사용되는 메서드" 강의 관련 질문입니다~
0
93
2
@nestjs/serve-static
0
105
2

