Skip site navigation (1) Skip section navigation (2)

Re: ejecutar una funcion en una bd desde otra bd

From: "PAUL ELGUERA MEZA" <pelgueram(at)gmail(dot)com>
To: "Leonel Nunez" <lnunez(at)enelserver(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: ejecutar una funcion en una bd desde otra bd
Date: 2007-02-28 21:32:41
Message-ID: be7a5bcf0702281332p5700356bwb8acbe6cc2ba24bf@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
hola, si gracias, ya lo instale, ahora estoy probandolo....hice una funcion
x en una bd A q ejecute una serie de sentencias en una bd B....todo sale
bien (creo tablas, triggers, etc), lo q no me sale aun es el insertar campos
en una tabla, al parecer es cuestion de los parametros del value, osea:

CREATE OR REPLACE FUNCTION f_x(p_orgnroreg "varchar")
.......codigo...........

sql := 'select dblink_connect(''con'',''dbname=LIMA user=postgres
password=postgres host=localhost'')';
  execute sql;

.......codigo...........

sql := 'INSERT INTO ROLXUSUARIO (ROLCODIGO,IIECODIGO,USUCODIGO) VALUES
(''06'','''||p_orgnroreg||''',''0000000001'')';
 execute 'select dblink_exec(''con'','''||sql||''')';

......codigo.........

ALTER FUNCTION f_x(p_orgnroreg "varchar")

como veran, el parametro q envio como valor a la fuincion se usa para armar
el insert para la bd B, me parece q el problema es ahi, pero aun no logro
dar con la solucion, he visto q unos usan el \ para estos casos

select dblink_exec('conn','insert into dados
values(\'nome3\',\'telefone3\');');

pero no se como adaptarlo a lo q estoy armando.....gracias de antemano por
la ayuda......

El día 21/02/07, Leonel Nunez <lnunez(at)enelserver(dot)com> escribió:
>
> > hola lista q tal, tengo el siguiente caso, tengo dos bases de datos (A y
> > B)
> > lo que necesito es que desde la bd A ejecutar una funcion en la bd B
> > (select
> > funcion_bd_B('xxx', 'yyy')), es eso factible, ambas bd estan en el mismo
> > servidor....he leido temas similares a lo q pregunto, en muchos casos
> > indican que lo recomendable es usar dblink, es necesario para mi caso?,
> si
> > es asi, como uso el dblink, como lo instalo, si alguien tiene un ejemplo
> y
> > me lo puede enviar, se lo agradecere bastante...y si no es necesario
> usar
> > dblinlk, como podria resolver este problema......muchas gracias de
> > antemano.....saludos
> >
> >
>
>
> Instala el paquete  contrib de postgresql de tu distro o buscalo en el
> DIRECTORIO contrib del source
>
> alli viene como instalarlo y ejecutarlo
>
> leonel
>
>
>

In response to

Responses

pgsql-es-ayuda by date

Next:From: YacatematrixDate: 2007-02-28 22:15:28
Subject: Re: DSN + DTS + PostgreSQL
Previous:From: Raúl Mero MoreiraDate: 2007-02-28 21:10:36
Subject: Re: DSN + DTS + PostgreSQL

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group