시리얼 변경
설명
ALTER SERIAL 문을 이용하면 시리얼 값의 증가치를 갱신하고 시작 값, 최소 값, 최대 값을 설정하거나 제거할 수 있으며, 순환 속성을 설정할 수 있다.
구문
ALTER SERIAL serial_identifier
[ INCREMENT BY interval ]
[ START WITH initial_value ]
[ MINVALUE min | NOMINVALUE ]
[ MAXVALUE max | NOMAXVALUE ]
[ CYCLE | NOCYCLE ]
- serial_identifier : 생성할 시리얼의 이름을 지정한다.
- INCREMENT BY interval : 시리얼 숫자간의 간격을 지정한다. interval 값으로 0을 제외한 38자리 이하의 어떤 정수도 지정할 수 있다. interval의 절대값은 MAXVALUE와 MINVALUE의 차이보다 작아야 한다. 음수가 설정되면 시리얼은 내림차순이 되고 양수가 설정되면 오름차순이 된다. 디폴트 값은 1이다.
- START WITH initial_value : 시리얼의 시작 값을 변경한다.
- MINVALUE : 시리얼의 최소값을 지정한다. 이 값은 38자리 이하의 숫자이다. MINVALUE는 초기값보다 작거나 같아야 하고 최대값보다 작아야 한다.
- NOMINVALUE : 오름차순 시리얼에 대해서는 1, 내림차순 시리얼에 대해서는 -(10)36이 최소값으로 자동 지정된다.
- MAXVALUE : 시리얼의 최대값을 지정한다. 이 값은 38자리 이하의 숫자이다. MAXVALUE는 초기값보다 작거나 같아야 하고 최소값보다 커야 한다.
- NOMAXVALUE : 오름차순 시리얼에 대해서는 (10)37, 내림차순 시리얼에 대해서는 -1이 최대값으로 자동 지정된다.
- CYCLE : 시리얼 값이 최대 또는 최소값에 도달한 후에 연속적으로 값을 생성하도록 지정한다. 오름차순 시리얼은 최대값에 도달한 후에 다음 값으로 최소값이 생성된다. 내림차순 시리얼은 최소값에 도달한 후에 다음 값으로 최대값이 생성된다.
- NOCYCLE : 시리얼이 최대 또는 최소값에 도달한 후에 시리얼 값이 더 이상 생성되지 않도록 지정한다. 디폴트 값은 NOCYCLE이다.
주의 시리얼의 시작 값을 바꾸기 위해 시스템 카탈로그인 db_serial 테이블을 직접 수정할 수는 없다. 따라서 CUBRID 2008 R2.0 이상 버전에서 내보내기(unloaddb)한 파일을 이용하여 CUBRID 2008 R1.x 이하 버전에서 가져오기(loaddb)할 수 없다.
예제
다음은 order_no 시리얼의 증가 값을 2로 변경하는 예제이다.
ALTER SERIAL order_no INCREMENT BY 2;