Todos os produtos
Search
Central de documentação

PolarDB:ALTER SEQUENCE

Última atualização: Jun 28, 2026

O comando ALTER SEQUENCE modifica as propriedades de uma sequência existente ou converte seu tipo.

O PolarDB for XScale oferece suporte a três tipos de sequência: new, group e time. Cada tipo aceita parâmetros específicos, que variam conforme você altera as propriedades da sequência ou a converte para outro tipo.

Observações de uso

  • Não é possível converter uma sequência do tipo group com múltiplas unidades para outro tipo. Além disso, os parâmetros UNIT COUNT e INDEX não podem ser alterados. Tentar essas operações faz com que a sequência pare de funcionar corretamente.

  • Antes de alterar o valor de START WITH, analise os valores atuais da sequência e a taxa de geração desses valores. Definir START WITH com um valor muito baixo pode gerar valores duplicados.

  • Ao usar a cláusula CHANGE TO, o parâmetro START WITH é obrigatório. Sem a cláusula CHANGE TO, o parâmetro START WITH torna-se opcional.

Sequências do tipo new

ALTER SEQUENCE <name> [ CHANGE TO GROUP | TIME ]
START WITH <numeric value>
[ INCREMENT BY <numeric value> ]
[ MAXVALUE <numeric value> ]
[ CYCLE | NOCYCLE ]

Parâmetro

Padrão

Descrição

START WITH

1

Valor inicial da sequência.

INCREMENT BY

1

Tamanho do intervalo entre valores consecutivos. Suportado apenas ao modificar propriedades de sequências do tipo new; não se aplica à conversão para os tipos group ou time.

MAXVALUE

9223372036854775807 (BIGINT com sinal)

Valor máximo permitido. Deve ser um número inteiro positivo. Disponível somente para alteração de propriedades em sequências new; não é válido durante a conversão para group ou time.

CYCLE

NOCYCLE

NOCYCLE

Define o comportamento ao atingir o valor máximo. A opção CYCLE reinicia a sequência a partir de START WITH. Já NOCYCLE retorna um erro caso novos valores sejam solicitados. Este parâmetro aplica-se exclusivamente à modificação de sequências new; não é válido para conversões para group ou time.

Uma sequência do tipo new só pode ser convertida para uma sequência do tipo group com uma única unidade. Após a conversão para uma sequência do tipo time, o valor original de START WITH perde a validade.

Sequências do tipo group

ALTER SEQUENCE <name> [ CHANGE TO NEW | TIME ]
START WITH <numeric value>
[ INCREMENT BY <numeric value> ]
[ MAXVALUE <numeric value> ]
[ CYCLE | NOCYCLE ]

Parâmetro

Padrão

Descrição

START WITH

1

Valor inicial da sequência.

INCREMENT BY

1

Tamanho do intervalo entre valores consecutivos. Válido apenas na conversão de uma sequência group para new.

MAXVALUE

9223372036854775807 (BIGINT com sinal)

Valor máximo permitido. Exige um número inteiro positivo. Aplicável somente ao converter uma sequência group para new.

CYCLE

NOCYCLE

NOCYCLE

Determina a ação quando o valor máximo é alcançado. Com CYCLE, a sequência recomeça em START WITH. Se definido como NOCYCLE, o sistema retorna um erro ao solicitar valores adicionais. Utilize este parâmetro apenas ao converter de group para new.

Ao converter uma sequência do tipo group para time, os valores dos parâmetros START WITH , INCREMENT BY , MAXVALUE e CYCLE / NOCYCLE tornam-se inválidos.

Sequências do tipo time

ALTER SEQUENCE <name> [ CHANGE TO NEW | GROUP ]
START WITH <numeric value>
[ INCREMENT BY <numeric value> ]
[ MAXVALUE <numeric value> ]
[ CYCLE | NOCYCLE ]

Parâmetro

Padrão

Descrição

START WITH

1

Valor inicial da sequência.

INCREMENT BY

1

Intervalo entre valores consecutivos. Suportado exclusivamente na conversão de sequências time para new.

MAXVALUE

9223372036854775807 (BIGINT com sinal)

Valor máximo permitido. Deve ser um inteiro positivo. Restrito a cenários de conversão de time para new.

CYCLE

NOCYCLE

NOCYCLE

Especifica o comportamento ao atingir o valor máximo. A configuração CYCLE reinicia a contagem a partir de START WITH. Por outro lado, NOCYCLE gera um erro se houver solicitação de mais valores. Aplica-se apenas ao transformar uma sequência time em new.

Na conversão de uma sequência time para group, os valores de START WITH , INCREMENT BY , MAXVALUE e CYCLE / NOCYCLE perdem a validade, pois a sequência group resultante conterá apenas uma unidade.

Exemplos

Alterar o valor inicial

ALTER SEQUENCE seq1 START WITH 1000000;

Converter para uma sequência do tipo group

ALTER SEQUENCE seq2 CHANGE TO GROUP START WITH 2000000;

Converter para uma sequência do tipo time

ALTER SEQUENCE seq3 CHANGE TO TIME;

Converter para uma sequência do tipo new com parâmetros padrão

ALTER SEQUENCE seq4 CHANGE TO NEW START WITH 100;

Converter para uma sequência do tipo new com parâmetros explícitos

ALTER SEQUENCE seq5 CHANGE TO NEW START WITH 200 INCREMENT BY 2 MAXVALUE 300 NOCYCLE;