Search Postgresql Archives

Fwd: triggers and execute...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi, it seems it didn't make it the first time.

Début du message réexpédié :

De : Dimitri Fontaine <dfontaine@xxxxxxxxxxxx>
Date : 30 avril 2009 12:03:10 HAEC
À : pgsql-general@xxxxxxxxxxxxxx
Objet : Rép :  triggers and execute...

On Monday 27 April 2009 22:32:22 Scott Marlowe 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.*)';

What you want looks like this (thanks RhodiumToad):

'INSERT INTO page_access_' || part ||
'SELECT (' || quote_literal(textin(record_out(NEW))) || '::page_access).*;'

That's supposing you have a parent table named page_access, of course. And casting this way has drawbacks too (which I can't recall at this moment), but I've been using this live for maybe more than a year now without any problem.

It works.  So, how am I supposed to run it with dynamic table names?

Hack your way around, partitioning is not yet there "for real"...


--
dim



--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux