wam
w__am 개발노트
wam
  • 분류 전체보기 (165)
    • CS 지식 (10)
      • 자료구조 (0)
      • 알고리즘 (0)
      • 컴퓨터 구조 (0)
      • 운영체제 (0)
      • 네트워크 (7)
      • 데이터베이스 (0)
      • 디자인 패턴 (3)
    • Frontend (131)
      • Three.js (64)
      • NPM (1)
      • Nest.js (19)
      • React (10)
      • Apollo (7)
      • TypeScript (2)
      • JavaScript (12)
      • HTML, CSS (1)
      • Jest (3)
      • E2E (5)
      • Cypress (7)
    • Database (12)
      • TypeORM (12)
    • IT 지식 (8)
      • 클라우드 서비스 (3)
      • 네트워크 (1)
      • 데이터 포맷 (2)
      • 기타 (2)
    • IT Book (2)
    • 유용한 사이트 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • 🐱 Github

인기 글

태그

  • 렌더링 성능 최적화
  • 함수 표현식
  • Interface
  • reactive variables
  • isabstract
  • 함수의 범위
  • react 성능 최적화
  • mapped types
  • 데이터 포맷
  • Decorators
  • math.cos()
  • API
  • 스코프
  • 삼각함수
  • getdelta()
  • e.preventdefault()
  • 오프-프레미스(off-premise) 방식
  • threejs 개발 할 때 도움을 줄 수 있는 유틸리티
  • gridhelper
  • 함수 선언문
  • three.js 구성 요소
  • getelapsedtime()
  • 초기 환경설정
  • 함수 리터럴
  • 원형적인 움직임
  • joi 에러
  • type-graphql
  • axeshelper
  • math.sin()
  • 디자인 패턴

최근 글

관리자

글쓰기 / 스킨편집 / 관리자페이지
hELLO · Designed By 정상우.
wam

w__am 개발노트

Relations 정리 One-to-One, @JoinColumn()
Database/TypeORM

Relations 정리 One-to-One, @JoinColumn()

2024. 8. 2. 20:41

 

@One-to-One

import { Entity, PrimaryGeneratedColumn, Column } from "typeorm"

@Entity()
export class Profile {
    @PrimaryGeneratedColumn()
    id: number

    @Column()
    gender: string

    @Column()
    photo: string
}
import {
    Entity,
    PrimaryGeneratedColumn,
    Column,
    OneToOne,
    JoinColumn,
} from "typeorm"
import { Profile } from "./Profile"

@Entity()
export class User {
    @PrimaryGeneratedColumn()
    id: number

    @Column()
    name: string

    @OneToOne(() => Profile)
    @JoinColumn()  **// 이 어노테이션은 'profile' 필드에 외래 키를 지정**
    profile: Profile
}
  • 두 엔티티 간의 일대일(1:1) 관계를 정의하는 데 사용
  • 즉, 하나의 엔티티가 다른 하나의 엔티티와만 관계를 맺는 경우이다.
  • 예를 들어, 사용자(User)가 하나의 프로필(Profile)을 갖고, 각 프로필은 하나의 사용자에만 속하는 경우이다.

 

 

@JoinColumn

  • 외래 키 열(column)을 명시적으로 정의하는 데 사용된다.
  • 관계의 주인(Owner) 쪽에서 사용되며, 외래 키가 어떤 열에 저장될지를 지정한다.
  • @JoinColumn 설정한 테이블에는 "relation ID"와 대상 엔티티 테이블에 대한 외부 키가 포함된다.

 

 

 

저작자표시 변경금지

'Database > TypeORM' 카테고리의 다른 글

@RelationId, 특정 필드에 대한 외래 키 값만 가져오기  (0) 2024.08.02
Column 타입 JSON으로 지정, @Column({ type: "json" })  (0) 2024.08.02
Relations 정리 OneToMany, ManyToOne  (0) 2024.08.02
EntityRepository - deprecated 되었다.  (0) 2024.08.02
TypeORM의 Entity  (0) 2024.07.29
    'Database/TypeORM' 카테고리의 다른 글
    • @RelationId, 특정 필드에 대한 외래 키 값만 가져오기
    • Column 타입 JSON으로 지정, @Column({ type: "json" })
    • Relations 정리 OneToMany, ManyToOne
    • EntityRepository - deprecated 되었다.
    wam
    wam

    티스토리툴바