ALTER SEQUENCE

기존 시퀀스의 속성을 수정합니다.

참고 항목:

CREATE SEQUENCE , DROP SEQUENCE , SHOW SEQUENCES , DESCRIBE SEQUENCE

구문

ALTER SEQUENCE [ IF EXISTS ] <name> RENAME TO <new_name>

ALTER SEQUENCE [ IF EXISTS ] <name> [ SET ] [ INCREMENT [ BY ] [ = ] <sequence_interval> ]

ALTER SEQUENCE [ IF EXISTS ] <name> SET
  [ { ORDER | NOORDER } ]
  [ COMMENT = '<string_literal>' ]
Copy

매개 변수

name

변경할 시퀀스의 식별자를 지정합니다. 식별자에 공백이나 특수 문자가 포함된 경우 전체 문자열을 큰따옴표로 묶어야 합니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.

식별자에 대한 자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.

RENAME TO new_name

시퀀스에 대해 새 식별자를 지정하는데, 스키마에 대해 고유한 식별자여야 합니다.

식별자에 대한 자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.

선택적으로 오브젝트의 이름을 바꾸는 동안 오브젝트를 다른 데이터베이스 및/또는 스키마로 이동할 수 있습니다. 그러려면 각각 db_name.schema_name.object_name 또는 schema_name.object_name 형식으로 새 데이터베이스 및/또는 스키마 이름을 포함하는 정규화된 new_name 값을 지정하십시오.

참고

  • 대상 데이터베이스 및/또는 스키마가 이미 있어야 합니다. 또한, 새 위치에 이름이 같은 오브젝트가 있으면 안 됩니다. 그렇지 않으면 문이 오류를 반환합니다.

  • 오브젝트 소유자(즉, 오브젝트에 대한 OWNERSHIP 권한을 가진 역할) 역시 대상 스키마를 소유하지 않는 한 오브젝트를 관리되는 액세스 스키마로 이동하는 것은 금지됩니다.

오브젝트의 이름이 바뀌면 그 오브젝트를 참조하는 다른 오브젝트도 새 이름으로 업데이트해야 합니다.

SET...

시퀀스에 대해 설정할 속성을 지정합니다.

[ INCREMENT [ BY ] sequence_interval ]

시퀀스의 단계 간격을 지정합니다.

  • 양의 시퀀스 간격 n 의 경우, 그다음 n-1 값은 각 시퀀스 호출에 의해 예약됩니다.

  • 음의 시퀀스 간격 -n 의 경우, 그다음으로 낮은 n-1 값은 각 시퀀스 호출에 의해 예약됩니다.

지원되는 값은 64비트 2의 보수 정수로 나타낼 수 있는, 0이 아닌 값입니다.

{ ORDER | NOORDER }

값이 오름차순으로 시퀀스에 대해 생성되는지 여부를 지정합니다.

  • ORDER를 지정하면 시퀀스 또는 자동 증분 열에 대해 생성되는 값이 오름차순(또는 간격이 음수 값인 경우에는 내림차순)으로 표시됩니다.

    예를 들어 시퀀스 또는 자동 증가 열에 START 1 INCREMENT 2가 있는 경우 생성된 값은 1, 3, 5, 7, 9 등이 될 수 있습니다.

  • NOORDER를 지정하면 값이 오름차순으로 표시되도록 보장되지 않습니다.

    예를 들어 시퀀스에 START 1 INCREMENT 2가 있는 경우 생성된 값은 1, 3, 101, 5, 103 등이 될 수 있습니다.

    NOORDER는 여러 삽입 작업을 동시에 수행해야 하는 경우(예: 여러 클라이언트가 여러 INSERT 문을 실행하는 경우) 성능을 향상시킬 수 있습니다.

참고

시퀀스가 NOORDER로 설정된 경우 시퀀스를 ORDER로 변경할 수 없습니다.

COMMENT = 'string_literal'

시퀀스에 대한 설명을 추가하거나 기존 설명을 덮어씁니다.

사용법 노트

  • 시퀀스가 생성된 후에는 시퀀스의 첫 번째 값/초기값을 변경할 수 없습니다.

  • 메타데이터 관련:

    주의

    고객은 Snowflake 서비스를 사용할 때 개인 데이터(사용자 오브젝트 제외), 민감한 데이터, 수출 통제 대상 데이터 또는 기타 규제 데이터가 메타데이터로 입력되지 않도록 해야 합니다. 자세한 내용은 Snowflake의 메타데이터 필드 섹션을 참조하십시오.

시퀀스 이름을 myseq 에서 newseq 로 바꾸기:

ALTER SEQUENCE myseq RENAME TO newseq;
Copy