Re: triggers and execute...

From: Richard Broersma <richard(dot)broersma(at)gmail(dot)com>
To: Scott Marlowe <scott(dot)marlowe(at)gmail(dot)com>
Cc: "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: Re: triggers and execute...
Date: 2009-04-27 21:24:40
Message-ID: 396486430904271424u5ffce6cmc3ff389bf356ec2d@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Mon, Apr 27, 2009 at 1:32 PM, Scott Marlowe <scott(dot)marlowe(at)gmail(dot)com> wrote:
> OK, I'm hitting a wall here.  I've written this trigger for partitioning:
>
> create or replace function page_access_insert_trigger ()
> returns trigger as $$
> DECLARE
>        part text;
>        q text;
> BEGIN
>        part = to_char(new."timestamp",'YYYYMMDD');
>        q = 'insert into page_access_'||part||' values (new.*)';
> ...
>
> When I create it and try to use it I get this error:
> ERROR:  NEW used in query that is not in a rule
> CONTEXT:  SQL statement "insert into page_access_20090427 values (new.*)"

At this point I don't think that there is a way for this function to
know the correct table type of new.* since page_access_... is still
only a concatenated string. There there a way to cast new.* to the
correct table type as part of this insert statement?

--
Regards,
Richard Broersma Jr.

Visit the Los Angeles PostgreSQL Users Group (LAPUG)
http://pugs.postgresql.org/lapug

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Scott Marlowe 2009-04-27 21:37:22 Re: triggers and execute...
Previous Message Gauthier, Dave 2009-04-27 21:15:05 Re: Query organization question