Re: ayuda con trigger que llama a un procedimiento

From: "Ing(dot) Marcos L(dot) Ortiz Valmaseda" <mlortiz(at)uci(dot)cu>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: ayuda con trigger que llama a un procedimiento
Date: 2010-01-27 11:41:51
Message-ID: 4B60267F.9090502@uci.cu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 27/01/2010 17:25, Arcel Labrada Batista escribió:
> buenos dias,
>
>
> tengo un pequeño problema pero no se como resolverlo.
>
> la situación es que para una sistema de replicas, necesito crear
> particiones de las tablas que voy a replicar, pero necesito que esas
> particiones se creen dinámicas
> por ejemplo,
>
> necesito que la partición tenga el nombre concatenado con el
> identificador de la tupla que inserto, para ello creo la función que a
> continuación les muestro,
>
> CREATE OR REPLACE FUNCTION "public"."f_crear_tablas_replicas" ()
> RETURNS trigger AS
> $body$
> declare
>
>
> begin
>
>
> create table public.tb_estudiante_"||NEW.id||() INHERITS (tb_estudiante);
>
> return new;
> end;
>
> $body$
> LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;
>
> y el problema esta en la concatenación, me da un error que dice:
>
> ERROR: error de sintaxis en o cerca de «||» at character 30
> QUERY: create table "tb_estudiante_"|| $1 ||() INHERITS (tb_estudiante)
> CONTEXT: SQL statement in PL/PgSQL function "f_crear_tablas_replicas"
> near line 7
>
> me pueden ayudar en esto???
>
Eso creo que todavía no se puede hacer con PostgreSQL, y no todos los
SGBD propietarios tampoco lo hacen, Creo que DB2 y Oracle son los
únicos, y no es tarea fácil.
Saludos

--
--------------------------------------------------------------------------------
"Para ser realmente grande, hay que estar con la gente, no por encima de ella."
Montesquieu
Ing. Marcos Luís Ortíz Valmaseda
PostgreSQL System DBA&& DWH -- BI Apprentice

Centro de Tecnologías de Almacenamiento y Análisis de Datos (CENTALAD)
Universidad de las Ciencias Informáticas

Linux User # 418229

-- PostgreSQL --
"TIP 4: No hagas 'kill -9' a postmaster"
http://www.postgresql-es.org
http://www.postgresql.org
http://www.planetpostgresql.org

-- DWH + BI --
The Data WareHousing Institute
http://www.tdwi.org
http://www.tdwi.org/cbip
---------------------------------------------------------------------------------

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Arcel Labrada Batista 2010-01-27 16:25:30 ayuda con trigger que llama a un procedimiento
Previous Message Oswaldo Hernández 2010-01-27 10:32:23 Re: Ayuda con tabla borrada