postgresql fdw 常用操作
fdw#
-- 安装外部服务扩展
create extension postgres_fdw;
-- 创建外部服务
create server postgres_server foreign data wrapper postgres_fdw options (host '192.168.10.188', port '1521', dbname 'testdb');
-- 修改外部服务器配置
-- 主机、端口和 database 这几项连接设置的更改只会对新建立的会话生效,不会影响已有会话
alter server postgres_server options (set host '192.168.10.188')
-- 查看外部服务器
\des
-- 查看外部服务器的详细信息
\des+
-- 删除外部服务
drop server postgres_server;
-- 创建用户映射
create user mapping for postgres server postgres_server options (user 'pca', password 'pca');
-- 查看用户映射信息
\deu
\deu+
-- 创建外部表
create foreign table postgres_table (id int, name varchar) server postgres_server options (schema_name 'public', table_name 'test1');
-- 设置外部表只读
alter foreign table postgres_table options (add updatable 'false');
-- 删除外部表 name 字段
alter foreign table postgres_table drop column name;
-- 给外部表添加字段
alter foreign table postgres_table add column name varchar(100);
-- 查看外部表
\det
\det+
-- 删除外部表
drop foreign table postgres_table;
-- 导入远程数据库中的所有表
-- 本地创建用来存放的 schema
create schema remote_public;
-- options:
-- import_collate 是否导入字符集排序规则设置,默认 true
-- import_default 是否导入字段默认值属性,默认 false
-- import_not_null 是否导入字段的 not null 属性,默认 true
import foreign schema public from server postgres_server into remote_public options (import_default 'true');
-- LIMIT TO 导入 schema 时指定某些表
import foreign schema public limit to (student, test) from server postgres_server into remote_public;
-- EXCEPT 导入 schema 时排除某些表
import foreign schema public except (student, test) from server postgres_server into remote_public;
file_fdw#
访问外部表(文件),读取任意程序的输出并将其转化为数据表(只读)。
-- 创建 file_fdw 扩展
create extension file_fdw;
-- 创建外部表服务
create server filefdw_server foreign data wrapper file fdw;
-- 无需用户映射
-- 创建外部表
create foreign table emp_new (
empno int, -- primary key 此处不能加主键
...
) server filefdw_server
-- 从文件导入
options (filename '/tmp/data.csv', format 'csv');
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理