작성
·
588
0
@PrimaryGeneratedColumn() 데코레이터에 인자로 전달할 수 있는
increment와 identity에 따라서 어떤 차이가 있는지 궁금합니다.
찾아봐도 알기가 어려워서 질문드립니다.
답변 1
1
@PrimaryGeneratedColumn()
데코레이터는 TypeORM에서 사용되며, 주로 엔터티의 주요 키(primary key)를 자동 생성(auto-incrementing)하기 위해 사용됩니다. 이 데코레이터에 전달할 수 있는 전략 중 increment
와 identity
에 대한 차이점은 데이터베이스의 종류와 그 데이터베이스가 지원하는 자동 증가 전략에 따라 다릅니다.
increment:
이 전략은 대부분의 관계형 데이터베이스에서 지원하는 기본적인 자동 증가 전략입니다. 즉, 주요 키 값이 자동으로 1, 2, 3, ...과 같은 순서로 증가됩니다.
MySQL, PostgreSQL, SQLite 등의 데이터베이스에서 사용됩니다.
identity:
이 전략은 SQL Server에서 주로 사용되는 자동 증가 전략입니다. identity
전략은 SQL Server에서 열(column)에 자동으로 증가되는 숫자 값을 생성하기 위해 사용됩니다.
기본적으로 increment
와 유사한 방식으로 동작하지만, 내부적으로 SQL Server의 IDENTITY
속성을 사용하여 구현됩니다.
결론적으로, increment
와 identity
의 차이는 주로 사용되는 데이터베이스의 종류와 관련이 있습니다. SQL Server를 사용하는 경우 identity
를, 그 외의 대부분의 관계형 데이터베이스에서는 increment
를 사용하면 됩니다.
답변 감사합니다!