PostgreSQL通过DBLINK执行存储过程创建表

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介: 在A服务器创建存储存储过程CREATE OR REPLACE FUNCTION "public"."crt_tab"()RETURNS "pg_catalog"."int4" AS $BODY$declare str_sql varchar(100);ret int;begincreate ta...
  1. 在A服务器创建存储存储过程
    CREATE OR REPLACE FUNCTION "public"."crt_tab"()

RETURNS "pg_catalog"."int4" AS $BODY$
declare
str_sql varchar(100);
ret int;
begin
create table tab_test(id int);
--execute immediate "create table tab_test(int id);";
--execute immediate str_sql;
return 1;
end;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100

  1. 在B服务器创建扩展db_link
    create extension dblink;
  2. 在B服务器创建连接,其中host地址为A服务器地址
  3. dblink_connect('test_dblink','host=10.110.38.201 dbname=admin user=postgres password=postgres');
  4. 执行A服务器存储过程,创建表(as t(ret int)为函数返回值类型,此处为int)
    • from dblink('test_dblink','select crt_tab()') as t(ret int);
  5. 关闭连接
    select dblink_disconnect('test_dblink');
相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
存储 SQL Oracle
AnalyticDB PostgreSQL 7.0 支持存储过程(CREATE PROCEDURE)特性
AnalyticDB PostgreSQL 7.0 新增了存储过程功能的支持,让用户在使用ADB PG时能够更方便高效地开发业务,并能够更好地兼容Oracle等传统数仓的业务。
488 1
AnalyticDB PostgreSQL 7.0 支持存储过程(CREATE PROCEDURE)特性
|
SQL 存储 XML
【学习资料】快速入门PostgreSQL应用开发与管理 - 7 函数、存储过程和触发器
大家好,这里是快速入门PostgreSQL应用开发与管理 - 7 函数、存储过程和触发器
|
存储 SQL Perl
PostgreSQL plpgsql 存储过程、函数 - 状态、异常变量打印、异常捕获... - GET [STACKED] DIAGNOSTICS
标签 PostgreSQL , GET , STACKED , DIAGNOSTICS 背景 使用GET STACKED DIAGNOSTICS捕获异常时的STACK内容。 使用GET DIAGNOSTICS捕获运行过程中的状态值。
4568 0
|
存储 关系型数据库 Shell
使用 Rust 开发 PostgreSQL 存储过程
pgxr 使用 Rust 来编写 PostgreSQL 的扩展函数(相当于存储过程)。 项目地址:https://github.com/clia/pgxr 使用这个星球上最快的、高效、安全、有趣的编程语言,来为世界上功能最强大的开源关系数据库编写库内的程序! 试想,当你从数据库中查询出 1000 条记录用于程序处理时,当你的程序是数据库内的程序时,你根本无需将这 1000 条结果通过 PostgreSQL 的通讯协议走网络传输到应用程序里,在应用程序里分配这么大一块内存来装这些数据,再来进行处理。
7319 0
|
SQL 关系型数据库 测试技术
PostgreSQL 11 相似图像搜索插件 imgsmlr 性能测试与优化 2 - 单机分区表 (dblink 异步调用并行) (4亿图像)
标签 PostgreSQL , imgsmlr , GiST , 图像特征值 , 小波转换 背景 续 《PostgreSQL 11 相似图像搜索插件 imgsmlr 性能测试 1 - 单机单表 (4亿图像)》 使用分区表+dblink异步接口并行调用。
1520 0
|
SQL 关系型数据库 对象存储
PostgreSQL dblink异步调用实践,跑并行多任务 - 例如开N个并行后台任务创建索引, 开N个后台任务跑若干SQL
标签 PostgreSQL , 后台任务 , DBLINK 异步调用 背景 使用DBLINK异步接口,可以非常方便的实现跑后台任务,如果要让数据库执行若干条SQL,开N个并行执行,同样可以使用DBLINK封装成API进行调用。
1350 0
|
存储 关系型数据库 PostgreSQL
|
SQL 存储 关系型数据库
PostgreSQL 11 新特性解读: 支持存储过程(SQL Stored Procedures)
PostgreSQL 11 版本一个重量级新特性是对存储过程的支持,同时支持存储过程嵌入事务,存储过程是很多 PostgreSQL 从业者期待已久的特性,尤其是很多从Oracle转到PostgreSQL朋友,尽管PostgreSQL提供函数可以实现大多数存储过程的功能,但在函数中无法执行事务实现部分提交,换句话说,函数中的SQL要么都执行成功,要不全部返回失败。
5785 0
|
7天前
|
存储 SQL NoSQL