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

Plsql et dblink

From: Tovo Rabemanantsoa <tovo(at)bordeaux(dot)inra(dot)fr>
To: Pgsql Fr Generale <pgsql-fr-generale(at)postgresql(dot)org>
Subject: Plsql et dblink
Date: 2008-07-23 13:08:43
Message-ID: 48872D5B.2000200@bordeaux.inra.fr (view raw or flat)
Thread:
Lists: pgsql-fr-generale
Bonjour,
Je suis pas très familier du plsql alors je vous soumet un petit problème que je rencontre.
J'ai 2 bases de données Base1 et Base2, j'aimerai extraire des données d'un table nommée Flux1 de Base1 et les injecter 
dans une table Flux2 dans Base2. Pour ça, j'utilise dblink. Je vous mets un exemple de ce que je veux faire :

CREATE OR REPLACE FUNCTION populate_flux()
   RETURNS numeric AS
$BODY$
declare
	tuples record;
begin
	FOR tuples IN SELECT toto FROM dblink('dbname=Base1', 'SELECT * FROM Flux1') as (toto record)
	LOOP
		RAISE NOTICE 'H2O = % et CO2 = % : %',tuples."H2O", tuples."CO2";

	END LOOP;
	return 0;
end;
$BODY$
   LANGUAGE 'plpgsql' VOLATILE;

Et bien entendu, ça, ça ne marche pas.
Visiblement la partie "FOR tuples IN SELECT toto FROM dblink('dbname=Base1', 'SELECT * FROM Flux1') as (toto record)" 
n'est pas bon.
Est-ce que quelqu'un pourrait me dire comment faire dans ce cas ?
Merci d'avance.

-- 
Tovo J. RABEMANANTSOA
INRA - UR1263 EPHYSE
71, Av. Edouard Bourlaux
F-33140 Villenave d'Ornon - France
Téléphone : +33 5 57 12 24 09


Responses

pgsql-fr-generale by date

Next:From: Guillaume LelargeDate: 2008-07-23 13:47:33
Subject: Re: Plsql et dblink
Previous:From: Stéphane A. SchildknechtDate: 2008-07-23 09:47:16
Subject: Re: Test

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