dblink能够在一个数据库中操作另外一个远程的数据库
Windows环境下配置dblink其实要比在linux下简单一些,因为在您安装完PostgreSql后,
在您的安装目录的PostgreSQL/8.4/lib目录下已经存在有dblink.dll文件(相当于linux下的dblink.so文件),
这是使用dblink所必需的函数文件,当然在linux环境下您可以通过以下方式创建.so文件:
准备工作:
1. 使用dblink,在安装PostgreSQL的时候,必须把的位于PostgreSQL下的contrib\dblink源码编译安装,
#cd contrib/dblink
#make
#make install
之后可以看到在$PGHOME下的lib下就有个dblink.so文件
2.导入dblink的函数,这些函数官方已经为您写好了,就是存放在PostgreSQL/8.1/share/contrib目录下的dblink.sql文件
[postgres@QITV0914 contrib]$ pwd
/opt/pgsql-8.4.21/share/contrib
[postgres@QITV0914 contrib]$ psql -d glaf -f dblink.sql
3.创建远程dblink连接
--连接数据库,
[postgres@QITV0914 contrib]$ psql -d glaf -U postgres
--这个命令主要作用是建立一个到远程数据库的连接
glaf=# select dblink_connect('LinkName', 'host=IP port=5432 dbname=DBNAME user=USERNAME password=PASSWD');
dblink_connect
----------------
OK
(1 row)
4.确认已创建dblink
select dblink_get_connections() ;
LinkName
5.查询数据
glaf=# select * from dblink('LinkName','select * from v_partinfo_list') as t(part text, dock text, p_count int,declare_date date,declare_finish date) ;
6.创建dblink的视图
glaf=# create view rejects_parts as select * from dblink('LinkName','select * from v_partinfo_list') as t(part text, dock text, p_count int,declare_date date,declare_finish date) ;
7.查询数据,确认视图
glaf=# select * from rejects_parts;