TypeOrm @CreateDateColumn() 질문
2558
작성한 질문수 8
DB에 Insert 하려고 할 때 TypeOrm에서 Default 값을 넣어주지 않아 에러가 발생했습니다.
(CreatedAt, UpdatedAt 컬럼)
그래서 처음에는 Database에서 Table에 Default값을 세팅하고 사용했는데요.
어떤 분이 질문 하신걸 보고 다시 수정해 보는 중입니다.
강의에 있는 소스는
@Column("datetime", { name: "createdAt", default: () => "CURRENT_TIMESTAMP"}) ...
이렇게 적혀있더군요.
근데 Github의 소스에는
@CreateDateColumn()
createdAt: Data;
로만 적혀있었습니다.
그리고 @CreatedDateColumn()은 Special Column이라고 아래와 같이 설명이 있던데요.
@CreateDateColumnis a special column that is automatically set to the entity's insertion date. You don't need to set this column - it will be automatically set.
저는 이 얘기를 TypeOrm에서 자동으로 입력해 주는 값으로 이해했는데... 막상 해보면 안되더라고요.
그래서...
만약 Github의 소스와 같이
@CreateDateColumn... 으로 사용하려면 Database에서 Default값을 설정해주어야 하는지
(그렇다면 @CreateDateColumn..은 자동 세팅되는 것이 아니겠죠...)
아니면 영상 강의 상처럼... default() => "CURRENT_TIMESTAMPT"... 로 사용해야 할지요
(물론 영상 강의의 소스는 Database에 그렇게 설정되어 있으니 그렇게 나온것이겠지만요..)
답변 1
0
일단 CreateDateColumn은 실제 테이블에도 default가 설정되어 있어야 하고, createQueryBuilder가 아닌 create로 만들어야 디폴트 값이 기록이 될 겁니다.
실제 테이블에 default가 세팅되어 있으면 어떤 방법으로 하든 상관이 없게 됩니다. 혹시나 안 되면 다음을 CreateDateColumn에 추가해보세요.
default: () => "CURRENT_TIMESTAMP()"
강의자료는 어디서 다운받나요?
0
119
4
질문 있습니다.
0
300
3
(강의 5:42 질문) providers를 통한 여러 개의 인스턴스 생성 & exports 통한 싱글톤 생성
0
154
2
코드 편집기 확장 프로그램
0
210
2
(질문)비밀 저장소에 접근하기 위한 인증 정보는 로컬 .env에 저장하는지?
0
148
2
(질문)외부 저장소를 통한 환경변수 불러오기 비동기 질문
0
171
3
로그인을 해도 LoggedInGuard쪽에서 false값이 나옵니다.
0
153
2
로그인방법이 고민됩니다.
0
191
2
yarn seed 명령어 실행 시 데이터 삽입 안됨
0
297
4
yarn run db:create 시에 발생하는 데코레이터 오류
0
244
2
npm run db:create 시에 발생하는 decorating 오류
0
235
2
RxJS 디버깅 질문 있습니다.
0
190
3
CacheManager에 대해 질문 있습니다.
0
176
2
로깅은 어떻게 하는게 효율적일까요?
0
226
1
CORS 질문 있습니다.
0
418
2
쿠키 옵션에 대해서 질문 있습니다.
0
185
2
로그아웃 요청이 403 forbidden 에러가 나는데 왜그런걸까요??
0
450
1
401 unauthorized문제
0
290
1
가드의 장점에 대해서 질문이 있습니다.
0
225
1
로그 관리에 대해 질문 있습니다.
0
253
2
CORS 에러 질문 있습니다.
0
319
2
배포 환경 DB 연결 질문 있습니다.
0
411
2
socket io 미 연결 문제 (nest & flutter)
1
1156
3
no elements in sequence 에러 관해서 질문이 있습니다.
0
456
1





