Hi all,

at work I´m using RDB 6.2. I can create triggers with the following
command:

AFTER UPDATE OF
       SIM_ICCV_L,
       SIM_ICCNR_L,
       START_DATUM_D,
       STAT_SEIT_D,
       PREISKLASSE_T
ON ent_TEILNEHMER REFERENCING OLD AS update_old NEW AS update_new
    ( UPDATE ent_TEILNEHMER t
        SET t.update_l = update_old.update_l + 1,
           t.insert_datum_d = cast(current_timestamp as date)
        WHERE ent_TEILNEHMER.dbkey = t.dbkey )
FOR EACH ROW;

or:

AFTER INSERT ON ent_TEILNEHMER
        (UPDATE ent_TEILNEHMER t
           SET t.update_l = 1,
               t.insert_datum_d = cast(current_timestamp as date)
               WHERE ent_TEILNEHMER.dbkey = t.dbkey)
FOR EACH ROW;

With postgresql 6.2 or 6.3 I must use a user defined function to get the
same result. 

Will there be some enhancements to triggers to use the above syntax ? I
think,  RDB is more user friendly ( at least for trigger defintions)...

Bye
Andreas

Mon, 09 Mar 1998 15:11:53 +0100
Andreas Joppich <andreas.joppich@T-Mobil.de>
create trigger question

Andreas Joppich wrote:
>
> Hi all,
>
> at work I=B4m using RDB 6.2. I can create triggers with the following
> command:
>
> AFTER UPDATE OF
>        SIM_ICCV_L,
>        SIM_ICCNR_L,
>        START_DATUM_D,
>        STAT_SEIT_D,
>        PREISKLASSE_T
> ON ent_TEILNEHMER REFERENCING OLD AS update_old NEW AS update_new
>     ( UPDATE ent_TEILNEHMER t
>         SET t.update_l =3D update_old.update_l + 1,
>            t.insert_datum_d =3D cast(current_timestamp as date)
>         WHERE ent_TEILNEHMER.dbkey =3D t.dbkey )
> FOR EACH ROW;
>
> or:
>
> AFTER INSERT ON ent_TEILNEHMER
>         (UPDATE ent_TEILNEHMER t
>            SET t.update_l =3D 1,
>                t.insert_datum_d =3D cast(current_timestamp as date)
>                WHERE ent_TEILNEHMER.dbkey =3D t.dbkey)
> FOR EACH ROW;
>
> With postgresql 6.2 or 6.3 I must use a user defined function to get the
> same result. =
>
>
> Will there be some enhancements to triggers to use the above syntax ? I
> think,  RDB is more user friendly ( at least for trigger defintions)...

    Now that 6.3 is out, I'm beginning with PL/pgSQL. It will not
    cover the above exactly,  but  it  will  allow  an  SQL  like
    procedural   language  to  be  used  to  create  the  trigger
    procedures so you don't have to write the triggers in 'C'. In
    the  meantime  you  might want to take a look into src/pl/tcl
    where you'll find Tcl as a loadable PL that  can  do  it  for
    you.

    If  PL/pgSQL  get's  ready  someday,  I'll take a look at the
    parser if we can enhance it to accept the  above  syntax  and
    automagically create an appropriate trigger procedure.


Until later, Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#======================================== jwieck@debis.com (Jan Wieck) #



Mon, 9 Mar 1998 16:08:55 +0100 (MET)
jwieck@debis.com (Jan Wieck)
Re: [HACKERS] create trigger question