본문 바로가기
카테고리 없음

오라클 insert 자동증가 컬럼의 최대값 +1하기 (MAX+1)

by kangs' tong 2023. 9. 29.

오라클 INSERT 자동증가 컬럼의 최대값 +1하기 (MAX+1)

1. Oracle 시퀀스 만들기

먼저, 자동으로 증가하는 값을 생성하기 위해 시퀀스를 만들어야 합니다. 시퀀스는 값을 생성하기 위한 번호 생성기입니다. 다음과 같이 시퀀스를 생성할 수 있습니다.

CREATE SEQUENCE sequence_name
    START WITH 1
    INCREMENT BY 1
    MAXVALUE 99999; -- 최대값 설정 (예: 99999)

위의 예제에서는 sequence_name이라는 시퀀스를 생성하며, 시작값은 1이고, 1씩 증가하며, 최대값은 99999입니다. 최대값은 원하는 값으로 설정할 수 있으며, 필요에 따라 변경할 수 있습니다.

2. INSERT문에 시퀀스 사용하기

시퀀스를 만들었다면, 이제 INSERT문에서 해당 시퀀스를 사용하여 값을 자동으로 증가시킬 수 있습니다. 다음과 같이 시퀀스를 사용한 INSERT문을 작성할 수 있습니다.

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (sequence_name.NEXTVAL, value2, value3, ...);

위의 예제에서는 table_name이라는 테이블에 값을 삽입하는 INSERT문입니다. 첫 번째 column에는 시퀀스를 사용하여 값을 자동으로 증가시킵니다. column2, column3 등에는 원하는 값들을 지정하여 데이터를 삽입합니다.

3. 시퀀스 값 확인하기

시퀀스의 현재 값을 확인하고 싶을 때는 다음과 같은 쿼리를 실행하면 됩니다.

SELECT sequence_name.CURRVAL
FROM dual;

위의 예제에서는 sequence_name의 현재 값을 확인합니다. dual은 오라클의 테이블로, 단일행/단일열의 값들을 반환합니다.

마무리

오라클에서 INSERT 자동증가 컬럼의 최대값에 1을 더하는 방법을 알아보았습니다. 시퀀스를 생성하고, INSERT문에서 시퀀스를 사용하여 값들을 자동으로 증가시킬 수 있습니다. 또한, CURRVAL을 사용하여 현재 시퀀스의 값을 확인할 수도 있습니다. 이렇게 자동증가 컬럼을 사용하면 별도의 로직 없이 번호를 자동으로 증가시킬 수 있어 편리합니다.

댓글