update column with rowtype - Mailing list pgsql-sql

From betty
Subject update column with rowtype
Date
Msg-id b1vq1o$krd$1@news.hub.org
Whole thread Raw
List pgsql-sql
Hi..

I try "rowtype" in trigger, ex:
create or replace function fn_tr_aiu_pdcblc() returns trigger as '
declare  c_pdcblc cursor for select * from t_pdcblc where fc_branch=new.fc_branch
and fc_bankacct=new.fc_bankacct;  balance decimal(30,5);  row_pdcblc t_pdcblc%rowtype;
begin   balance:=0;   if (select count(*) from t_pdcblc where fc_branch=new.fc_branch and
fc_bankacct=new.fc_bankacct and fd_trxdate<new.fd_trxdate)>0 then       balance:=new.fm_balance from t_pdcblc where
fc_branch=new.fc_branch
and fc_bankacct=new.fc_bankacct and fd_trxdate<new.fd_trxdate;   end if;   open c_pdcblc;   for c_pdc in 1..(select
count(*)from t_pdcblc where
 
fc_branch=new.fc_branch and fc_bankacct=new.fc_bankacct and
fd_trxdate>=new.fd_trxdate) loop       fetch c_pdcblc into row_pdcblc;       row_pdcblc.fm_balance :=
balance+row_pdcblc.fm_masuk-row_pdcblc.fm_keluar;       raise  notice ''balance %'',row_pdcblc.fm_balance;
new.fm_balance:= row_pdcblc.fm_balance;   end loop;   close c_pdcblc;   return new;
 
end;' language 'plpgsql';

the result of this trigger is; oid      |     fd_trxdate                |  fm_masuk    | fm_keluar |
fm_balance
--------+---------------------    +------------ +-----------+------------562784 | 2003-02-06 00:00:00 | 1000.00000 |
0.00000|    0.00000
 

and which command  i could used to fill column fm_balance with 1000?
please gimme some idea...???

thank's
betty


thank's




pgsql-sql by date:

Previous
From: Josh Berkus
Date:
Subject: Re: which will be faster? w/ or w/o indices
Next
From: "Daniel Schuchardt"
Date:
Subject: Re: "function has no parameter $1" - help.