As restrições podem ser adicionadas, modificadas ou excluídas usando a sintaxe a seguir:
Assim como na criação de tabelas, uma restrição pode ser declarada como CHECK (imposta em INSERT) ou como ASSUME (considerada confiável pelo otimizador sem ser verificada). Veja constraints para entender a diferença entre as duas.
MODIFY CONSTRAINT substitui a declaração de uma restrição existente, mantendo sua posição na definição da tabela. Ele também pode alterar o tipo da restrição (por exemplo, de CHECK para ASSUME). É equivalente a remover a restrição e adicioná-la novamente com a nova declaração. Se a restrição não existir, a consulta lançará um erro, a menos que IF EXISTS seja especificado.
Veja mais em constraints.
As consultas adicionam, alteram ou removem metadados sobre restrições da tabela, por isso são processadas imediatamente.
A verificação da restrição não será executada sobre os dados existentes se ela tiver sido adicionada ou modificada.
Todas as alterações em tabelas replicadas são propagadas para o ZooKeeper e também serão aplicadas em outras réplicas.