oracle 将查询出的数据加1-10_PostgreSQL数据库跨库访问
跨库访问常用的三种方式:schema,dblink,postgres_fdw
第一种:schema(架构方式)
其实还是在一个数据库中,只不过把不同数据保存在不同的架构中,创建与public并行的架构
访问其他架构下面的需要带上架构名称.表名,如下格式
select * from public.test;
select * from test.test1;
如果认为输入框架名称太麻烦,可以设置
set search_path to "$user",public,test; 前面是固定格式,后面是对应要访问的两个框架,第一个参数为本框架,另一个为要访问的框架,设置完成后访问直接可以访问表名,不需要加架构名称
在public访问test框架中的test1表:select * from test1;
第二种,dblink
跨库查询必须使用dblink,无法像Oracle那样,授权然后直接访问
首先创建扩展
create extension
dblink;
再去查询
select * from dblink('host=127.0.0.1 dbname=postgres user=postgres password=123456','select * from account') as t(id int,name varchar(10));
如果要查询别的数据库的东西,可以创建视图,然后从视图中查询
第三种 postgres_fdw
首先安装该扩展
CREATE EXTENSION postgres_fdw;
然后使用CREATE SERVER创建一个外部服务器。在这个示例中,我们希望连接到主机为192.83.123.89 的PostgreSQL服务器,监听端口为5432。远程服务器上做连接的数据库名为situation
CREATE SERVER foreign_server
FOREIGN DATA WRAPPER postgres_fdw
OPTIONS (host '192.168.6.168', port '5432', dbname 'situation');
也需要一个使用CREATE USER MAPPING定义的用户映射,辨认将要在远程服务器上使用的角色:
CREATE USER MAPPING FOR postgres
SERVER foreign_server
OPTIONS (user 'postgres', password 'admin@110');
现在可以用CREATE FOREIGN TABLE创建一个外部表了。在这个示例中,我们希望访问远程服务器上名为some_schema.some_table 的表。它的本地名为foreign_table:chatgroup为远程表名
CREATE FOREIGN TABLE foreign_table (
id text NOT NULL,
groupid text,
userid text,
createuserid text,
createtime timestamp
)
SERVER foreign_server
OPTIONS (schema_name 'public', table_name 'chatgroup');
查询数据
select * from foreign_table;
oracle 将查询出的数据加1-10_PostgreSQL数据库跨库访问相关推荐
- sql 加一列 数字_sql语句中查询出的数据添加一列,并且添加默认值
查询出数据,并且要添加一列表中都不存在的数据,且这一列的值都是相等的 select app_id,app_secret from wx_ticket group by app_id; 查询出的数据是 ...
- 查询出的数据记录字段要与实体类中的属性名一致
查询出的数据记录字段要与实体类中的属性名一致 转载于:https://www.cnblogs.com/1020182600HENG/p/6183031.html
- sql语句中查询出的数据添加一列,并且添加默认值
查询出数据,并且要添加一列表中都不存在的数据,且这一列的值都是相等的 select app_id,app_secret from wx_ticket group by app_id; 查询出的数据是 ...
- 微服务架构下,解决数据库跨库查询的一些思路
开局先总结一下:现在很多厂都进行了微服务的开发模式,但是呢,业务的拆分的时候如果存在交叉是一件非常头大的事情,所以大家写微服务尽量不要交叉的写,比如新增用户如果已经存在在userservice里面了那 ...
- SQL语句查询出的数据进行字符串拼接,oracle批量删除数据库用户实例演示
通过 dba_users 表可以查询出所有的数据库用户,我下面筛选了所有 HR 开头的数据库用户,要把他们都删掉. select username from dba_users where usern ...
- oracle随机取名,oracle 表查询随机抽取数据
最近在做系统时用到了随机抽取记录的问题: 上网上查找了很多相关资料,发现了不同的方法及其差异.都是基于ORACLE的方法哦 首先第一个是随机抽取6个 select * from (select * ...
- 微服务跨数据库联合查询_微服务架构下,解决数据库跨库查询的一些思路
加关注,不迷路! 前言 在服务做微服务改造后,原先单库join查询已经不能满足要求,每个拆分的微服务对应一个数据库实例,而且部署在不同的服务器上,那么解决"跨库查询"就势在必行了. ...
- oracle 导数据报exp00058_一文看懂oracle12c数据库跨小版本迁移
概述 简单记录一下最近做的一个测试环境迁移,主要是从12.2.0.1 跨两个小版本迁移到19c(12.2.0.3),操作系统均为centos7,下面一起来看看吧~ 一.导出测试环境数据 1. 创建路径 ...
- 微服务跨数据库联合查询_数据库跨库查询
由于微服务技术发展迅猛,在我们的架构中,每个微服务都会相应的对接一个数据库,各个数据库之间有关联的表(比如用户表.业务表等)会互相同步数据,其他的数据操作各自独立(如日志表.操作表等),这么设计是基于 ...
最新文章
- 微信公众号Java开发-笔记02【开发接入准备、开发接入】
- 复试计算机网络与软件工程,2018华南理工大学软件工程复试经验贴
- 关于推送系统设计的一些总结与思考(三)
- 机器学习集成模型学习——Stacking集成学习(五)
- vue如何和PHP交互,VUE中如何使用Vue-resource完成交互
- Labview自适应屏幕分辨率
- 超全蓝牙芯片原厂总结(含芯片型号)
- Git学习笔记--廖雪峰官网教程
- MDClub 轻量级网论坛源码
- 卡巴斯基2010激活码
- golang学习笔记(6)-gorm实现查询功能
- Tree Traversal(二叉树的遍历)
- Google Play App Store 年度最佳应用及游戏盘点
- 一元二次求解matlab程序,怎么用matlab解一元二次方程
- 如何绘制UML用例图
- 硬盘变为RAW格式,数据还能恢复吗?
- 狙击精英4服务器文件,狙击精英4联机补丁
- [-Flutter 自组篇-] 蛛网图+绘制+动画实践
- The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from required .cl
- 方舟上的李德磊--记方舟科技董事长兼总裁李德磊校友