inflearn logo
강의

Course

Instructor

[Code Factory] [Beginner] NestJS REST API Backend Complete Conquest Master Class - NestJS Core

Try generating data using Relation

@JoinColumn을 쓰는 경우와 안쓰는 경우의 차이

75

oridori2705

54 asked

0

@JoinColumn을 명시하는 경우가 있고 그렇지 않은 경우가 있는데
무슨 차이인가요?

단순히 아래처럼 컬럼 명을 명시해주기 위해서 @JoinColumn이 사용되는 걸까요?
@JoinColumn({ name: 'author_id' })

javascript typescript rest-api nestjs backend

Answer 1

0

communityai8509

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

@JoinColumn 데코레이터는 TypeORM에서 관계를 설정할 때 사용됩니다. 주로 외래 키를 명시하기 위해 사용되며, 외래 키 이름을 명확히 정의하고 싶을 때 매우 유용합니다. @JoinColumn을 사용하지 않을 때 TypeORM은 자동으로 관계 칼럼의 이름을 생성합니다. 하지만, @JoinColumn을 명시하면 개발자가 설정한 이름으로 외래 키가 생성되어, 데이터베이스 스키마를 더 명확하게 정의할 수 있습니다.

@JoinColumn을 사용하는 경우

  1. 외래 키 명시: 외래 키의 컬럼명을 명확히 하고 싶다면 @JoinColumn을 사용합니다.
  2. 다중 키 설정: 복합 키 (composite key)를 사용할 경우 @JoinColumn으로 각 컬럼의 이름을 지정할 수 있습니다.
  3. 관계 설정 명확화: 두 테이블 간의 관계를 선명하게 보여주고 싶을 때 사용합니다.

관련된 질문이 여기 있습니다. 질문에서는 외래 키 설정을 포함하여 관계 설정에 대한 다양한 의견을 확인할 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

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