Lists: | pgsql-sql |
---|
From: | David Hartwig <daveh(at)insightdist(dot)com> |
---|---|
To: | pgsql-sql <pgsql-sql(at)postgreSQL(dot)org> |
Subject: | Plpgsql Language Feature? |
Date: | 1999-02-11 22:29:27 |
Message-ID: | 36C359C7.60932427@insightdist.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-sql |
In the context of a plpgsql script is a possible to access the number of
rows effected by an UPDATE or DELETE statement? It could be used to
simplify, and probably improve performance on, many scripts. I would
like to do something like:
update foo set bar = bar + new.amount where key = new.key;
if ROWS_UPDATED > 0 then
-- This would be less likely to occur
insert into foo (key, bar) values (new.key, new.bar);
end if;
Otherwise I must construct an additional SELECTstatement to see if the
row exists. Something like:
select 1 from foo where key = new.key;
if found then
update foo set bar = bar + new.amount where key = new.key;
else
insert into foo (key, bar) values (new.key, new.bar);
end if;
Might this be a worth while feature if it does not now exist?
TIA.
From: | jwieck(at)debis(dot)com (Jan Wieck) |
---|---|
To: | daveh(at)insightdist(dot)com (David Hartwig) |
Cc: | pgsql-sql(at)postgreSQL(dot)org |
Subject: | Re: [SQL] Plpgsql Language Feature? |
Date: | 1999-02-12 01:08:47 |
Message-ID: | m10B768-000EBRC@orion.SAPserv.Hamburg.dsh.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-sql |
> In the context of a plpgsql script is a possible to access the number of
> rows effected by an UPDATE or DELETE statement? It could be used to
> simplify, and probably improve performance on, many scripts. I would
> like to do something like:
>
> update foo set bar = bar + new.amount where key = new.key;
>
> if ROWS_UPDATED > 0 then
> -- This would be less likely to occur
> insert into foo (key, bar) values (new.key, new.bar);
> end if;
Yes, I think this would be a nice feature. Will take a look
if I can add it before v6.5 BETA starts.
Jan
--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#======================================== jwieck(at)debis(dot)com (Jan Wieck) #