데이터 베이스/SQL

[PostgreSQL] nextval( ) 생성 법 정리

쟈누이 2020. 8. 6. 17:57
반응형

 

nextval( ) 이란?

PostgreSql에서 시퀀스를 자동으로 생성시켜주는

function 이다.

 

 

생성하는 방법

postgresql 에서 nextval( ) 을 사용하기 위해서는

사전에 시퀀스를 먼저 생성해야 가능하다

CREATE SEQUENCE [시퀀스 이름]

 

그러고 난 후에 sequence 를 사용할 수 있다.

시퀀스를 insert, update 문등에 사용할 때는

# create 예시

create table [테이블 이름]
	(num_sequence int (default) nextval('생성한 시퀀스 이름')
    ...
    ... );

 

주의할 사항

하지만 nextval 같은 경우에는 나의 기준에서는 아직까지는 사용하기가 은근히

까다로운 면이 있는 것 같다..

특히 default 를 써주고 안 써주는 면이 있었는데..

아직까지는 잘 모르겠다.. 

 

지금까지의 상황에서는 default 를 써주지 않았을 때, 에러가 조금 많이 발생했던 것 같다.

내 기준에서는 이 부분만 주의하면 nextval( ) 로 자동 시퀀스를 생성하는 것은 

어렵지 않은 것 같다.

 

참고 링크

https://hotte.tistory.com/2

 

PostgreSQL) Sequence 생성, 활용, 초기화

PostgreSQL SEQUENCE Incremental Unique Key Sequence 를 생성하기 위해 PostgreSQL , ORACLE 은 SEQUENCE 라고 불리는 독립 오브젝트를 제공하며, SQL-Server , Sybase 은 컬럼에 IDENTITY 속성을, MySQL 은 컬..

hotte.tistory.com

mine-it-record.tistory.com/61

 

[ORACLE]오라클_시퀀스(Sequence) 생성 / 수정 / 삭제

시퀀스(Sequence) - 유일한 값을 생성해주는 오라클 객체입니다. - 일련번호, 자동증가 값을 생성합니다. - 시퀀스는 테이블과 별개로 동작합니다. (독립적) - 모든 DBMS 에서 사용 하는 것은 아닙니다

mine-it-record.tistory.com

mine-it-record.tistory.com/62

 

[ORACLE]오라클_시퀀스(NEXTVAL , CURRVAL) 사용법

NEXTVAL 와 CURRAVAL 은 당연히 시퀀스를 먼저 생성을 해야 사용이 가능합니다. *시퀀스 생성, 수정, 삭제 (https://mine-it-record.tistory.com/61) 둘의 사용법은 굉장히 간단합니다. 앞서 시퀀스 생성 부분에서

mine-it-record.tistory.com

 

 

(만약 콘텐츠가 조금이나마.. 도움이 되었다면

광고 한번만 부탁드려도 될까요? ㅎㅎ)

반응형