Re: triggers and execute...
От | Scott Marlowe |
---|---|
Тема | Re: triggers and execute... |
Дата | |
Msg-id | dcc563d10904271437j18517354j56e72c8021fb6e8f@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: triggers and execute... (Richard Broersma <richard.broersma@gmail.com>) |
Ответы |
Re: triggers and execute...
|
Список | pgsql-general |
On Mon, Apr 27, 2009 at 3:24 PM, Richard Broersma <richard.broersma@gmail.com> wrote: > On Mon, Apr 27, 2009 at 1:32 PM, Scott Marlowe <scott.marlowe@gmail.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? I tried casting the new.*::page_access and that didn't work. For now I'll carry on with the complete listing of everything.
В списке pgsql-general по дате отправления: