Database/TypeORM

TypeORM에서 제공하는 특별한 데코레이터 , 엔티티의 생성 및 수정 일자를 자동으로 관리

wam 2024. 7. 29. 23:44

 

@CreateDateColumn과 @UpdateDateColumn은 TypeORM에서 제공하는 특별한 데코레이터로, 엔티티의 생성 및 수정 일자를 자동으로 관리하는 데 사용된다.

 

이 데코레이터들은 엔티티의 날짜 및 시간 정보를 자동으로 업데이트하며, 데이터베이스의 각 레코드에 대한 타임스탬프를 추적하는 데 유용하다.

 

import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn } from 'typeorm';

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

  @Column()
  name: string;

  @Column()
  age: number;

  @CreateDateColumn()
  createdAt: Date;  // 레코드 생성 시 자동으로 현재 날짜와 시간이 설정됨

  @UpdateDateColumn()
  updatedAt: Date;  // 레코드 수정 시 자동으로 현재 날짜와 시간이 설정됨
}

 

데코레이터 설명

  • @CreateDateColumn: 엔티티가 처음 데이터베이스에 삽입될 때 자동으로 현재 날짜와 시간을 기록한다. 주로 레코드의 생성 일자를 저장하는 데 사용된다.

  • @UpdateDateColumn: 엔티티가 업데이트될 때마다 자동으로 현재 날짜와 시간을 기록한다. 주로 레코드의 마지막 수정 일자를 저장하는 데 사용된다.