이 가이드에서는 다음 예를 다룹니다.
- 시퀀스 값 재설정
- 시퀀스의 최소값 변경
- 시퀀스의 최대값 변경
- 시퀀스의 캐싱 크기 변경
- 캐시 시퀀스의 크기 및 순서 설정
- 내림차순 값을 생성하도록 시퀀스 설정
- 시퀀스의 증분 값 변경
- 주기 옵션을 활성화하도록 시퀀스 변경
- 주기 옵션을 비활성화하도록 시퀀스 변경
- 여러 옵션을 수정하기 위해 시퀀스 변경
시퀀스 값 재설정
시퀀스 값을 재설정하거나 시퀀스 값을 시작 값에서 다시 시작하려면 ' 시퀀스 변경 ' 명령을 ' 재시작 ” 절을 사용할 수 있습니다. 예는 다음과 같습니다.
ALTER SEQUENCE LINUXHINT_SEQ RESTART;
위 명령어에서 ' LINUXHINT_SEQ ”는 시퀀스 이름을 나타냅니다.
산출
출력은 시퀀스가 재설정되었음을 보여줍니다.
시퀀스의 최소값 변경
Oracle에서 시퀀스를 만들 때 기본적으로 최소값은 1로 설정됩니다. ' 시퀀스 변경 ' 명령을 ' 최소값 ” 절을 활용하여 시퀀스의 최소값을 변경할 수 있습니다. 예는 다음과 같습니다.
ALTER SEQUENCE LINUXHINT_SEQ MINVALUE -1;이 예에서 새 최소값은 -1 .
산출
출력은 최소값이 변경되었음을 보여줍니다.
시퀀스의 최대값 변경
기본적으로 Oracle 시퀀스의 최대값은 “10^27 – 1”이며, 이는 38자리 십진수에 대해 가능한 가장 큰 값입니다. 최대 시퀀스 값을 변경하려면 ' 시퀀스 변경 ' 명령을 ' 최대값 ” 절을 사용할 수 있습니다. 예는 다음과 같습니다.
ALTER SEQUENCE LINUXHINT_SEQ MAXVALUE 1000;위의 예에서 새 최대값은 1000 .
산출
스크린샷에서 최대값이 변경된 것을 확인할 수 있습니다.
메모 : 위의 예에서 시퀀스는 1000에 도달한 후 값 생성을 중지하고 해당 지점을 초과하여 값을 생성하려고 시도하면 오류가 발생합니다.
시퀀스의 캐싱 크기 변경
캐시 크기는 더 빠른 액세스를 위해 미리 할당되고 메모리에 저장되는 시퀀스 번호의 수를 결정합니다. 시퀀스의 캐시 크기를 변경하려면 ' 은닉처 ” 절에 “ 시퀀스 변경 ' 명령. 예를 들면 다음과 같습니다.
ALTER SEQUENCE LINUXHINT_SEQ 캐시 50;위의 예에서 시퀀스의 캐시 크기는 오십 . 이는 더 빠른 액세스를 위해 시퀀스 번호 50이 한 번에 미리 할당됨을 의미합니다.
산출
출력은 캐시 크기가 변경되었음을 나타냅니다.
캐시 시퀀스의 크기 및 순서 설정
시퀀스 캐시 크기를 설정하고 시퀀스 번호를 순서대로 생성하려면 “ 주문하다 ' 그리고 ' 은닉처 ” 절은 “ 시퀀스 변경 ' 명령. 다음은 예입니다.
ALTER SEQUENCE LINUXHINT_SEQ 캐시 100 주문;이 예에서 새 캐시 크기 값은 100 .
산출
시퀀스가 변경되었음을 출력에 표시합니다.
내림차순 값을 생성하도록 시퀀스 설정
시퀀스 번호 사이의 간격은 증분 번호에 의해 결정됩니다. 증분 값은 기본적으로 1로 설정되며, 이는 시퀀스가 호출될 때마다 시리즈의 다음 번호가 반환됨을 의미합니다. 증분이 -1로 설정되면 시퀀스는 내림차순으로 정수를 생성합니다.
내림차순 값을 생성하도록 시퀀스를 설정하려면 ' 증분 기준 ' 와 더불어 ' 시퀀스 변경 ” 명령을 실행하고 값을 -1로 설정합니다. 예는 다음과 같습니다.
ALTER SEQUENCE LINUXHINT_SEQ INCREMENT BY -1;이 예에서 값은 -1 즉, 시퀀스가 호출될 때마다 시퀀스의 이전 번호가 반환됩니다.
산출
출력은 시퀀스가 내림차순 값을 생성하도록 설정되었음을 나타냅니다.
시퀀스의 증분 값 변경
시퀀스의 증분 값을 변경하려면 ' 증분 기준 ' 와 더불어 ' 시퀀스 변경 ” 명령을 내리고 그에 따라 값을 설정합니다. 예는 다음과 같습니다.
ALTER SEQUENCE LINUXHINT_SEQ 증가 2;이 예에서 값은 2 즉, 시퀀스가 호출될 때마다 시퀀스의 다음 숫자가 2씩 증가합니다.
산출
그에 따라 순서가 변경되었음을 출력에 표시합니다.
주기 옵션을 활성화하도록 시퀀스 변경
시퀀스에 대해 주기 옵션을 활성화하면 시퀀스가 최대값(MAXVALUE)에 도달하면 시퀀스가 순환되어 처음부터(MINVALUE) 다시 시작됩니다. 이 옵션을 활성화하려면 ' 주기 ” 절에 “ 시퀀스 변경 ' 명령. 예는 다음과 같습니다.
ALTER SEQUENCE LINUXHINT_SEQ CYCLE; 산출
사이클 옵션이 표시된 출력이 활성화되었습니다.
시퀀스를 비활성화 주기로 변경
시퀀스에 대해 주기 옵션이 비활성화되면 시퀀스는 생성 순서에 따라 최대값(MAXVALUE) 또는 최소값(MINVALUE)에 도달하면 값 생성을 중지합니다. 이 옵션을 비활성화하려면 'ALTER SEQUENCE' 명령과 함께 'NOCYCLE' 절을 사용하십시오. 예는 다음과 같습니다.
ALTER SEQUENCE LINUXHINT_SEQ NOCYCLE; 산출
출력은 주기 옵션이 비활성화되었음을 나타냅니다.
여러 옵션을 수정하기 위해 시퀀스 변경
주어진 명령을 입력하여 음수 증분 -1, 최대값 10, 주기 옵션 활성화를 갖도록 시퀀스를 설정합니다.
ALTER SEQUENCE LINUXHINT_SEQ 증가 -1 MAXVALUE 10 사이클; 산출
출력은 시퀀스가 성공적으로 변경되었음을 보여줍니다.
결론
오라클에서는 ' 시퀀스 변경 ” 명령을 사용하면 시퀀스 값 재설정, 최소값 및 최대값 변경, 증분 값, 캐싱 크기, 순서 지정, 주기 옵션 활성화 또는 비활성화를 통해 시퀀스의 속성을 변경할 수 있습니다. 이러한 변경은 성능 향상을 위해 시퀀스의 시작 값을 변경하거나 캐싱 크기를 조정해야 하는 경우와 같은 다양한 상황에서 유용합니다. 이 게시물은 실제 예제를 사용하여 ALTER SEQUENCE 명령의 다양한 사용 사례를 설명했습니다.