PostgreSQL dblink的使用
发布时间:2020-12-13 17:20:07 所属栏目:百科 来源:网络整理
导读:dblink,能够在一个数据库中操作另外一个远程的数据库。 准备工作: 1. 使用dblink,在安装PostgreSQL的时候,必须把的位于PostgreSQL下的contribdblink源码编译安装, #cd contrib/dblink #make #make install 之后可以看到在$PGHOME下的lib下就有个dblink.
dblink,能够在一个数据库中操作另外一个远程的数据库。
准备工作: 1. 使用dblink,在安装PostgreSQL的时候,必须把的位于PostgreSQL下的contribdblink源码编译安装, #cd contrib/dblink #make #make install 之后可以看到在$PGHOME下的lib下就有个dblink.so文件 2. 使用psql dbname之后: 使用create extention dblink; 扩展dblink功能(其实这个操作是创建dblink的相关航函数) 示例:取得postgres表的tb1的数据 select * from dblink('dbname=postgres host=localhost port=5432 user=postgres passwd=123456'::text,'select * from tb1'::text)t (id integer,name character varying)); 如果认为每次查询都要写dblink的一堆信息很麻烦的话,可以在当期库中建一个view来解决。 CREATE VIEW view_remote_tb1 AS select * from dblink('dbname=postgres host=localhost port=5432 user=postgres passwd=123456'::text,name character varying));然后就可以从这个view中查询数据了。 SELECT * FROM remote_people_user_name; 如果不只是查询数据,而是需要修改postgres的数据的情况下怎么弄呢? 1. 先执行dblink_connect保持连接 SELECT dblink_connect('mycoon','hostaddr=127.0.0.1 port=5432 dbname=postgres user=postgres password=123456'); 2. 执行BEGIN命令 SELECT dblink_exec('mycoon','BEGIN'); 3. 执行数据操作(update,insert,create等命令) SELECT dblink_exec('mycoon','insert into tb1 select generate_series(10,20),''hello'''); 4. 执行事务提交 SELECT dblink_exec('mycoon','COMMIT'); 5. 解除连接 SELECT dblink_disconnect('mycoon');
参考:http://www.52php.cn/article/p-bhxtduqa-qx.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |