인프런 커뮤니티 질문&답변
@JoinColumn을 쓰는 경우와 안쓰는 경우의 차이
작성
·
10
0
@JoinColumn을 명시하는 경우가 있고 그렇지 않은 경우가 있는데
무슨 차이인가요?
단순히 아래처럼 컬럼 명을 명시해주기 위해서 @JoinColumn이 사용되는 걸까요?@JoinColumn({ name: 'author_id' })
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. oridori2705님.
@JoinColumn 데코레이터는 TypeORM에서 관계를 설정할 때 사용됩니다. 주로 외래 키를 명시하기 위해 사용되며, 외래 키 이름을 명확히 정의하고 싶을 때 매우 유용합니다. @JoinColumn을 사용하지 않을 때 TypeORM은 자동으로 관계 칼럼의 이름을 생성합니다. 하지만, @JoinColumn을 명시하면 개발자가 설정한 이름으로 외래 키가 생성되어, 데이터베이스 스키마를 더 명확하게 정의할 수 있습니다.
@JoinColumn을 사용하는 경우
- 외래 키 명시: 외래 키의 컬럼명을 명확히 하고 싶다면 @JoinColumn을 사용합니다.
- 다중 키 설정: 복합 키 (composite key)를 사용할 경우 @JoinColumn으로 각 컬럼의 이름을 지정할 수 있습니다.
- 관계 설정 명확화: 두 테이블 간의 관계를 선명하게 보여주고 싶을 때 사용합니다.
관련된 질문이 여기 있습니다. 질문에서는 외래 키 설정을 포함하여 관계 설정에 대한 다양한 의견을 확인할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





