ALTER SEQUENCE

Modifica as propriedades para uma sequência existente.

Consulte também:

CREATE SEQUENCE , DROP SEQUENCE , SHOW SEQUENCES , DESCRIBE SEQUENCE

Sintaxe

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

Parâmetros

name

Especifica o identificador da sequência a ser alterada. Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.

Para obter mais detalhes sobre os identificadores de, consulte Requisitos para identificadores.

RENAME TO new_name

Especifica o novo identificador para a sequência; deve ser único para o esquema.

Para obter mais detalhes sobre os identificadores de, consulte Requisitos para identificadores.

Você pode mover o objeto para um banco de dados e/ou esquema diferente enquanto opcionalmente renomeia o objeto. Para isso, especifique um valor qualificado new_name que inclua o novo banco de dados e/ou nome do esquema no formulário db_name.schema_name.object_name ou schema_name.object_name, respectivamente.

Nota

  • O banco de dados e/ou esquema de destino já deve existir. Além disso, um objeto com o mesmo nome não pode já existir no banco de dados de destino; caso contrário, a instrução retorna um erro.

  • É proibido mover um objeto para um esquema de acesso gerenciado a menos que o proprietário do objeto (ou seja, a função que tem o privilégio OWNERSHIP sobre o objeto) também possua o esquema de destino.

Quando um objeto é renomeado, outros objetos que fazem referência a ele devem ser atualizados com o novo nome.

SET...

Especifica as propriedades a serem definidas para a sequência:

[ INCREMENT [ BY ] sequence_interval ]

Especifica o intervalo de etapas da sequência:

  • Para intervalo de sequência positiva n, os próximos valores n-1 são reservados por cada chamada de sequência.

  • Para intervalo de sequência negativa -n, os próximos n-1 valores mais baixos são reservados por cada chamada de sequência.

Valores suportados são qualquer valor diferente de zero que possa ser representado por um inteiro de complemento de dois de 64 bits.

{ ORDER | NOORDER }

Especifica se os valores são gerados ou não para a sequência em ordem crescente.

  • ORDER especifica que os valores gerados para uma sequência ou coluna incrementada automaticamente estão em ordem crescente (ou, se o intervalor for um valor negativo, em ordem decrescente).

    Por exemplo, se uma sequência ou coluna incrementada automaticamente tiver START 1 INCREMENT 2, os valores gerados poderão ser 1, 3, 5, 7, 9 etc.

  • NOORDER especifica que não é garantido que os valores estejam em ordem crescente.

    Por exemplo, se uma sequência tiver START 1 INCREMENT 2, os valores gerados poderão ser 1, 3, 101, 5, 103 etc.

    NOORDER pode melhorar o desempenho quando várias operações de inserção precisam ser executadas simultaneamente (por exemplo, quando vários clientes estão executando várias instruções INSERT).

Nota

Se uma sequência estiver definida como NOORDER, você não poderá alterar a sequência para ORDER.

COMMENT = 'string_literal'

Adiciona um comentário ou substitui um comentário existente para a sequência.

Notas de uso

  • O primeiro/valor inicial de uma sequência não pode ser alterado depois que a sequência é criada.

  • Em relação aos metadados:

    Atenção

    Os clientes devem garantir que nenhum dado pessoal (exceto para um objeto do usuário), dados sensíveis, dados controlados por exportação ou outros dados regulamentados sejam inseridos como metadados ao usar o serviço Snowflake. Para obter mais informações, consulte Campos de metadados no Snowflake.

Exemplos

Renomear sequência myseq como newseq:

ALTER SEQUENCE myseq RENAME TO newseq;
Copy