ALTER DOMAIN

Nome

ALTER DOMAIN  --  altera a definição de um domínio

Sinopse

ALTER DOMAIN nome
    { SET DEFAULT expressão | DROP DEFAULT }
ALTER DOMAIN nome
    { SET | DROP } NOT NULL
ALTER DOMAIN nome
    ADD restrição_de_domínio
ALTER DOMAIN nome
    DROP CONSTRAINT nome_da_restrição [ RESTRICT | CASCADE ]
ALTER DOMAIN nome
    OWNER TO novo_dono

Descrição

O comando ALTER DOMAIN altera a definição de um domínio existente. Existem várias subformas:

SET/DROP DEFAULT

Estas formas definem ou removem o valor padrão para o domínio. Deve ser observado que estes padrões somente se aplicam aos comandos INSERT subseqüentes; as linhas já existentes nas tabelas que utilizam o domínio não são afetadas.

SET/DROP NOT NULL

Estas formas modificam se o domínio está marcado para permitir valores nulos ou para rejeitar valores nulos. O comando SET NOT NULL pode ser utilizado somente quando as colunas que utilizam o domínio não contêm valores nulos.

ADD restrição_de_domínio

Esta forma adiciona uma nova restrição ao domínio, utilizando a mesma sintaxe de CREATE DOMAIN. Somente será bem-sucedida se todas as colunas que utilizam o domínio satisfizerem a nova restrição.

DROP CONSTRAINT

Esta forma remove restrições no domínio.

OWNER

Esta forma torna o usuário especificado o dono do domínio.

É necessário ser o dono do domínio para utilizar ALTER DOMAIN; exceto no caso de ALTER DOMAIN OWNER, que só pode ser executado por um superusuário.

Parâmetros

nome

O nome (opcionalmente qualificado pelo esquema) do domínio existente a ser alterado.

restrição_de_domínio

Nova restrição de domínio para o domínio.

nome_da_restrição

Nome da restrição existente a ser removida.

CASCADE

Remove, automaticamente, os objetos que dependem da restrição.

RESTRICT

Recusa remover a restrição se existirem objetos que dependem da mesma. Este é o comportamento padrão.

novo_dono

O nome de usuário do novo dono do domínio.

Exemplos

Para adicionar a restrição NOT NULL ao domínio:

ALTER DOMAIN cep SET NOT NULL;

Para remover a restrição NOT NULL do domínio:

ALTER DOMAIN cep DROP NOT NULL;

Para adicionar uma restrição de verificação ao domínio:

ALTER DOMAIN cep ADD CONSTRAINT chk_cep CHECK (char_length(VALUE) = 8);

Para remover uma restrição de verificação do domínio:

ALTER DOMAIN cep DROP CONSTRAINT chk_cep;

Compatibilidade

O comando ALTER DOMAIN é compatível com o SQL:1999, exceto pela variante OWNER, que é uma extensão do PostgreSQL.

SourceForge.net Logo CSS válido!