03nov. 2009
Postgresql: requêtes sur une base de données distante avec db_link
08:27 - Par Matthieu - Développement - aucun commentaire
dblink est un module qui permet de se connecter à d'autres bases de données PostgreSQL™ depuis une session de base de données.
Installation des contrib-postgresql
Afin de pouvoir utiliser db_link in faut installer les "contrib" postgresql. Pour cela:
apt-get install postgresql-contrib-8.3
ou
cd ~/sources/postgresql-8.2.3/contrib/dblink
make
make install
Ajout des fonctions dblink à la base de données
su postgres
psql -d testgis -f /opt/pgsql/share/contrib/dblink.sql
Création d'une connexion à la base de données distante
SELECT * from dblink_connect('connexion_autre_base','hostaddr=10.1.1.1 port=5432 dbname=autre_base user=test password=test');
Exécution d'une requête
SELECT * FROM dblink('connexion_autre_base','SELECT id,userid,homedir FROM users',true)
AS foo(id int,userid text,homedir text) ORDER BY id;
Fermeture de la connexion
SELECT * from dblink_disconnect('connexion_autre_base');
aucun commentaire