2009/10/5 Marinho Brandao <mari...@gmail.com>

>
> hummm... nessa página eu só encontrei sobre *criar* campos com
> constraints... eu estou procurando saber como se *altera* uma
> constraint já existente (sem ter de excluí-la e criar novamente). Isso
> é possível?
>
>
Como o Euler já comentou não existe sintaxe para alterar uma constraint via
comando SQL, portanto vc terá de excluir a constraint (ALTER TABLE .. DROP
CONSTRAINT..) e criar ela novamente (ALTER TABLE ... ADD CONSTRAINT ...)

Porém creio que existe uma forma de alterar o comportamento da constraint
alterando o catálogo... a tabela "pg_catalog.pg_constraint" armazena as
informações sobre as constraints (pk, fk, uk, checks) criadas na tua base de
dados... em [1] vc pode verificar o conteúdo das colunas "confupdtype" e
"confdeltype" que armazenam o comportamento do "ON UPDATE..." e "ON DELETE
..." da definição da constraint.

Não tenho certeza se isso funcionará, mas creio que não custa a tentativa.


[1]
http://www.postgresql.org/docs/8.4/interactive/catalog-pg-constraint.html

-- 
Fabrízio de Royes Mello
>> Blog sobre TI: http://fabriziomello.blogspot.com
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a