El 8 de febrero de 2010 15:14, Mario Reyna <[email protected]> escribió:

>  Hola.. este es mi primer post..
> alguien que me puede ayudar
> por necesidades de diseño se cuenta con "n" esquemas en postgresql 8.4 que
> se comportan exactamente igual (cuentan con las mismas tablas, funciones
> etc);
>
> La idea principal es que las funciones que se desarrollen, sean ejecutadas
> en automaticos, en los esquemas almacenados en una tabla .
>
> si alguien sabe se alguna herramienta o algunos tips les agradeceria.
>
> mi idea inicial seria hacer una funcion  en pl/pgsql
> que se posicione atravez del search_path y compile le funcion.
> usando el commando de la consula \i
>
> CREATE OR REPLACE FUNCTION sincroniza_fun_anuarios (funcion TEXT) RETURNS
> INTEGER AS $$
> DECLARE
> sql               TEXT; BEGIN
>
> FOR esq IN
>          SELECT x FROM esquemas LOOP   -- aqui recorremos los schemas que
> se encuentran almacenados en la tabla
>            sql:='set search_path to '||x;       -- para ejecutar el
> search_path
>            EXECUTE sql;
>
>            EXECUTE '\i '||funcion;
>
> END  LOOP;
> RETURN 1;
> END;
>


Podrías crear las funciones en el esquema publico, y dentro de ellas acceder
a tu tabla deseada usando set search_path to mi_esquema, ya luego el proceso
requerido.



>

Responder a