Re: is it me or trigger side effects
От | Cedar Cox |
---|---|
Тема | Re: is it me or trigger side effects |
Дата | |
Msg-id | Pine.LNX.4.21.0103262242100.3439-100000@nanu.visionforisrael.com обсуждение исходный текст |
Ответ на | Re: is it me or trigger side effects (Stephan Szabo <sszabo@megazone23.bigpanda.com>) |
Список | pgsql-sql |
On Mon, 26 Mar 2001, Stephan Szabo wrote: > > > create function updateCat() returns opaque as ' > > declare > > rec record; > > rename new to cat; > > rename old to ct; > > maxlen integer; > > > > begin > > if tg_op = ''INSERT'' and cat.category is null then > > raise exception ''You are missing entry for category field''; > > > > else > > if cat.display then > > maxlen:= addCount(cat.category); > > return cat; > > else > > return cat; > > end if; > > end if; > > if tg_op = ''DELETE''then > > maxlen:= delCount(ct.category); > > return ct; > > end if; > > > > end; > > ' language 'plpgsql'; > > I think you want your if blocks to be more like: > if tg_op = ''INSERT'' > if cat.category is null > (raise exception) > else > (do insert stuff) > end if > end if > if tg_op = ''DELETE'' > (do delete stuff) > end if > > I think you're currently going to get into the > insert stuff on both inserts where it isn't > null and deletes (since in both cases the > and will be false). You probably want to handle UPDATEs as well.. make sure you plan for this too.
В списке pgsql-sql по дате отправления: