MySQL에서 auto increment를 통해 자동 증가 인덱스를 사용할 수 있다.
PostgreSQL에서는 sequence를 통해 동일한 작용을 할 수 있다.
해당 sequence를 생성하고, 이용해서 id를 포함한 Table을 생성하는 쿼리이다.
create sequence extn.keyword_seq;
create table extn.keyword_dictionary(
id int default nextval('extn.keyword_seq'),
keyword varchar(255),
created_at date default CURRENT_DATE,
primary key (id)
) ;
아래는 Table을 삭제하고 Sequence도 삭제하는 쿼리이다.
drop table extn.keyword_dictionary ;
drop sequence extn.keyword_seq;
만약 sequence를 초기화하며 TRNCATE하고 싶다면 아래의 쿼리를 실행하면 된다.
TRUNCATE TABLE extn.keyword_dictionary RESTART IDENTITY
++++
PostgreSQL 데이터 타입 중 Serial을 사용하면
seq를 만들어서 default를 주지 않아도 자동 증가 정수가 생성된다.
id serial NOT null PRIMARY KEY,
더 큰 정수가 필요하면 bigserial
위의 방식과 아래의 방식의 차이점도 찾아봐야겠다.
728x90
'프로그래밍 > Database' 카테고리의 다른 글
[PostgreSQL] 외래키 제약조건 ON DELETE/UPDATE (1) | 2024.02.14 |
---|---|
[PostgreSQL] DB 세팅 (0) | 2024.01.30 |
[PostgreSQL] 파티션프루닝 (0) | 2023.04.04 |
[PostgreSQL] 날짜 데이터 타입 정하기 (0) | 2023.04.04 |
query 에서 변수 쓰기 (0) | 2021.10.05 |