브렌쏭의 Veritas_Garage

Incorrect table definition; 본문

[Project_만들다]/[Project_문제해결]

Incorrect table definition;

브렌쏭 2022. 4. 11. 12:27

Incorrect table definition; 
there can be only one auto column and it must be defined as a key

카테고리에는 그냥 카테고리명 뿐이고, 딱히 ID값이나 키값이 없어도 되지 않나?

혹은 카테고리명 자체가 키값으로 쓰면 되지 않을까? 하는 생각에 다음과 같이 슬쩍 써두었다.

@Entity()
@ObjectType()
export class Category {
    @PrimaryGeneratedColumn()
    @Field(() => String)
    id: string;
}

이럼 아이디가 곧 카테고리명이니 더 직관적이고 좋잖아 왜그래~ 하면서 세팅했고 서버 실행에도 문제가 없었다.

..서버 실행에만 문제가 없었다.

실제로 api를 이용해서 카테고리명을 생성하려 했더니 오류를 뿜었고 나는 탄식을 뱉었다. 위와 같은 오류를 내고 있는 것을 보고 아아 내가 괜한 고집을 부리는 것인가 하고 아이디를 다시 되돌리고 이름을 따로 칼럼을 만들어 지정해줬더니 아름답게 작동한다.

 

하하하하하

교체한 코드는 다음과 같다

@Entity()
@ObjectType()
export class Category {
    @PrimaryGeneratedColumn('increment') // 하나씩 값이 올라간다
    @Field(() => Int) // 키는 정수형 숫자값
    id: number;

    @Column()
    @Field(() => String)
    name: string; // 이름은 따로 칼럼을 만들어 문자열로 지정
}
Comments