2023-06-10
1. AUTO
기본값이며, 데이터베이스에 맞는 자동 생성 전략을 사용합니다.
주로 MySQL의 AUTO_INCREMENT, Oracle의 SEQUENCE 등과 같이 데이터베이스의 기능을 활용하여 기본 키를 생성합니다.데이터베이스마다 지원하는 자동 생성 전략이 다를 수 있습니다.
2.IDENTITY
데이터베이스의 IDENTITY 컬럼을 사용하여 기본 키를 생성합니다.
주로 MySQL, SQL Server, PostgreSQL 등에서 지원됩니다.
데이터베이스가 기본 키를 자동으로 생성하는 경우에 사용됩니다.
3.SEQUENCE
데이터베이스의 시퀀스를 사용하여 기본 키를 생성합니다.
주로 Oracle, PostgreSQL 등에서 지원됩니다.
시퀀스는 일련번호를 생성하는 객체로, 각각의 값이 유일하고 순차적으로 증가합니다.
4.TABLE
데이터베이스의 특정 테이블을 사용하여 기본 키를 생성합니다.
키 생성용 테이블을 생성하고 해당 테이블의 특정 컬럼을 사용하여 기본 키를 생성합니다.
여러 스레드나 서버에서 동시에 키를 생성할 때 사용할 수 있는 전략입니다.
5.기타
SEQUENCE 및 IDENTITY를 지원하지 않는 데이터베이스일부 데이터베이스에서는 SEQUENCE나 IDENTITY를 지원하지 않을 수 있습니다. 이 경우, GenerationType.AUTO와 같이 사용하거나, GenerationType.TABLE을 사용하여 기본 키를 생성할 수 있습니다.
메인 이미지 출처 : 사진: Unsplash의Lena Polishko