[OT] CREATE RULE en PostgreSQL
Juan Carlos Muñoz Ilabaca
jcmunoz en dcc.uchile.cl
Sab Jul 15 01:22:04 CLT 2006
Disque el Viernes, 14 de Julio de 2006 16:20, Rodrigo Fuentealba escribiosese:
> Estimados Listeros:
>
> No sé si realmente esto cae en Off-Topic pero por si las moscas...
>
> [...]
> El problema se presenta al hacer update, pues me deja actualizar
> perfectamente el código 'PA' a 'pa'. Eso cae de cajón, pero:
>
> CREATE OR REPLACE RULE actualizar_cliente AS
> ON update TO tabla_clientes
> DO ALSO
> UPDATE tabla_clientes
> SET codigo = upper(codigo)
> WHERE new.codigo = codigo;
>
Tu problema es simple... le estás diciendo al PG que cuando se haga un update,
haga un update... entonces lo que debes verificar antes de hacer el update
dentro de la regla es que si codigo != upper(codigo) entonces haga el
update...
En el fondo no tienes condición de borde para tu proceso recursivo... eso es
todo...
>[...]
> --
> Rodrigo Fuentealba.
Atte. JCMI
--
Q: What's tiny and yellow and very, very, dangerous?
A: A canary with the super-user password.
Más información sobre la lista de distribución Linux