| From: | "Emanuel CALVO FRANCO" <postgres(dot)arg(at)gmail(dot)com> | 
|---|---|
| To: | jmdc_marcelo(at)yahoo(dot)com(dot)ar, pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org> | 
| Subject: | Re: problema con trigger | 
| Date: | 2008-11-03 13:20:09 | 
| Message-ID: | f205bb120811030520i7605ac7bs76e3f5fcedd83e2@mail.gmail.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-es-ayuda | 
te conviene utilizar valores por default y restricciones check en el
ddl del campo de la tabla.
En el caso de querer convertir los NULL a   ' ', te conviene en vez de
utilizar un trigger, utilizar un RULE.
CREATE RULExxxxx AS
ON INSERT TO tabla WHERE
    ( fulano is NULL )
DO INSTEAD
    INSERT INTO tabla VALUES (' ');
no probe la funcionalidad del ejemplo, pero va por ese lado si no me equivoco.
2008/11/3 marcelo Cortez <jmdc_marcelo(at)yahoo(dot)com(dot)ar>:
> Gente
>
> tengo un trigger  para corregir un campo de tabla , el tema es que no me grabe nulls en un campo.
> aca el codigo del trigger.
>
> CREATE OR REPLACE FUNCTION tr_status()
>  RETURNS trigger AS
> $BODY$
>    BEGIN
>        -- Check that empname and salary are given
>        IF NEW.status_f IS NULL THEN
> NEW.status_f := ' ';
>        END IF;
>
>        RETURN NEW;
>    END;
> $BODY$
>  LANGUAGE 'plpgsql' VOLATILE
>  ;
>
> asi lo instale.
>
>  CREATE TRIGGER tr_status
>  AFTER INSERT OR UPDATE
>  ON marca
>  FOR EACH ROW
>  EXECUTE PROCEDURE tr_status();
>
> pero el siguiente query me encuentra registros con null.
>
>  select * from marca where status_f  is null ;
> Como es posible si despues de insert o update el trigger corrige este campo??
>
> cualquuier ayuda sera apreciada
> saludos
>
> mdc
>
>
>      ____________________________________________________________________________________
> ¡Buscá desde tu celular!
>
> Yahoo! oneSEARCH ahora está en Claro
>
> http://ar.mobile.yahoo.com/onesearch
> --
> TIP 7: no olvides aumentar la configuración del "free space map"
>
-- 
    Emanuel Calvo Franco
   Syscope Postgresql DBA
     BaPUG / AOSUG Member
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Emanuel CALVO FRANCO | 2008-11-03 13:25:43 | Re: Campos time sin parte decimal | 
| Previous Message | Rodrigo Fuentealba | 2008-11-03 13:13:25 | Re: Campos time sin parte decimal |