pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Terence Kearns <terencek@isd.canberra.edu.au>
To: Richard Huxton <dev@archonet.com>
Cc: Terence Kearns <terencek@isd.canberra.edu.au>
Cc: pgsql-sql@postgresql.org
Subject: Re: (trigger function) -> ERROR: NEW used in non-rule query
Date: Fri, 18 Jul 2003 19:18:20 +1000
Message-ID: <3F17BB5C.4020803@cts.canberra.edu.au> (raw)
In-Reply-To: <200307181003.42279.dev@archonet.com>
References: <3F17AE38.5020302@cts.canberra.edu.au>
	<200307181003.42279.dev@archonet.com>

Richard Huxton wrote:
> On Friday 18 Jul 2003 9:22 am, Terence Kearns wrote:
> 
>>I'm writing a trigger which wants to reference the pre-defined NEW record.
>>
>>I can do this
>>idval := NEW.blah;
>>
>>This works fine!!!
>>
>>What I really need to do is
>>idval := NEW.(quote_ident(TG_ARGV[3]));
>>or this
>>idval := NEW.(TG_ARGV[3]);
> 
> 
> I'll give you the short answer - no you can't do this (in plpgsql). Which 
> isn't to say it'll never be possible, but not at the moment.
> 
> Can you afford to look at an alternative language? I'd suggest looking at TCL, 
> although I must admit I've never used it myself.
> 
> 

damn. There's realy no other way for me to access the value since the 
trigger function will be called from different relations.

I tried idval := (''NEW.'' || TG_ARGV[3]); but recieved
ERROR: pf_atoi: error in "NEW.blah": can't parse "NEW.blah"

Oh well, can't win them all :/

Well I suppose I could try TCL. The problem is that there is little to 
no documentation on postgres stored procedures in TCL and I've never 
even seen the language before. None the less, I'll look into it. It's 
almost worth it. If that fails, I may even try perl <shudders>. if that 
files, I will try to get --with-python to configure (which it's refusing 
to do at the moment even though I have a working installation).



-- 
Terence Kearns ~ ph: +61 2 6201 5516
IT Database/Applications Developer
Enterprise Information Systems
Client Services Division
University of Canberra
www.canberra.edu.au




view thread (7+ messages)  latest in thread

Message-ID: <3F17BB5C.4020803@cts.canberra.edu.au>
Permalink:  ../3F17BB5C.4020803@cts.canberra.edu.au/
Also on:    postgresql.org/message-id/3F17BB5C.4020803@cts.canberra.edu.au

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: terencek@isd.canberra.edu.au, dev@archonet.com
  Subject: Re: (trigger function) -> ERROR: NEW used in non-rule query
  In-Reply-To: <3F17BB5C.4020803@cts.canberra.edu.au>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox