nest new nestjs_ORM
Entity file의 Column 생성
- Column()
- 일반 컬럼이다. 기본적인 컬럼을 생성할 수 있다. title, age 등등
- @PrimaryColumn()
- 모든 테이블에서 기본적으로 존재해야한다.
- 테이블 안에서 각각의 Row를 구분 할 수 있는 칼럼이다. (대신 자동 생성하지 않는다.)
- @PrimaryGeneratedColumn(
'uuid'
)
- asdqweaf123-123asdqwexcz-123412asdzxcg-123234zxcv
- 수학적 알고리즘으로 절대로 겹치지 않는 값으로 형성되도록 만들수 있다.
- 데이터가 추가될때마다 자동으로 생성되는 Column 이다.
- @CreateDateColumn()
- 데이터가 생성되는 날짜와 시간이 자동으로 찍힌다.
- @UpdateDateColumn()
- 데이터가 업데이트 되는 날자와 시간
- @VersionColumn()
- 데이터가 업데이트 될때마다 1씩 올라간다.
- save() 함수가 몇번 불렸는지 기억한다.
- @Generated(
'uuid'
)
- @Column() 과 무조건 같이 쓰여야한다.
- uuid가 자동으로 생성되게 할 수 있다.
기본적인 User Enitity 생성 코드
@Entity()
export class UserModel {
@PrimaryGeneratedColumn()
id: number;
@Column()
title: string;
@CreateDateColumn()
createdAt: Date;
@UpdateDateColumn()
updateAt: Date;
@VersionColumn()
version: number;
@Column()
@Generated('uuid')
additionalId: string;
}
Column에 들어가는 property