云数据库 GAUSSDB-规格约束
时间:2024-11-02 18:51:26
规格约束
- 自治事务执行时,将会在后台启动自治事务session,可以通过max_concurrent_autonomous_transactions设置自治事务执行的最大并行数量,取值范围:0~1024,默认值:10。
- 当max_concurrent_autonomous_transactions参数设置为0时,自治事务将无法执行。
- 自治事务新启session后,将使用默认session参数,不共享主session下对象(包括session级别变量,本地临时变量,全局临时表的数据等)。
- 自治事务受通信缓冲区影响,返回给客户端的信息大小受限于通信缓冲区长度,超过通信缓冲区长度时报错。
- 触发器函数不支持自治事务。
CREATE TABLE test_trigger_des_tbl(id1 INT, id2 INT, id3 INT); CREATE OR REPLACE FUNCTION tri_insert_func() RETURNS TRIGGER AS $$ DECLARE PRAGMA AUTONOMOUS_TRANSACTION; BEGIN INSERT INTO test_trigger_des_tbl VALUES(NEW.id1, NEW.id2, NEW.id3); RETURN NEW; END $$ LANGUAGE plpgsql;
- 自治事务不支持非顶层匿名块调用(仅支持顶层自治事务,包括存储过程、函数、匿名块)。
create table t1(a int ,b text); DECLARE --PRAGMA AUTONOMOUS_TRANSACTION; BEGIN DECLARE PRAGMA AUTONOMOUS_TRANSACTION; BEGIN dbe_output.print_line('just use call.'); insert into t1 values(1,'can you rollback!'); END; insert into t1 values(2,'I will rollback!'); rollback; END; / select * from t1;
- 自治事务不支持ref_cursor参数传递。
create table sections(section_ID int); insert into sections values(1); insert into sections values(1); insert into sections values(1); insert into sections values(1); CREATE OR REPLACE function proc_sys_ref() return SYS_REFCURSOR IS declare PRAGMA AUTONOMOUS_TRANSACTION; C1 SYS_REFCURSOR; BEGIN OPEN C1 FOR SELECT section_ID FROM sections ORDER BY section_ID; return C1; END; / CREATE OR REPLACE function proc_sys_ref(OUT C2 SYS_REFCURSOR, OUT a int) return SYS_REFCURSOR IS declare PRAGMA AUTONOMOUS_TRANSACTION; C1 SYS_REFCURSOR; BEGIN OPEN C1 FOR SELECT section_ID FROM sections ORDER BY section_ID; return C1; END; /
- 分布式自治事务不支持下推(IMMUTABLE,STABLE类型)。
CREATE OR REPLACE procedure autonomous_test_in_p_116(num1 int ) IMMUTABLE AS DECLARE PRAGMA AUTONOMOUS_TRANSACTION; BEGIN perform pg_sleep(1); END; / CREATE OR REPLACE procedure autonomous_test_in_p_117(num1 int ) STABLE AS DECLARE PRAGMA AUTONOMOUS_TRANSACTION; BEGIN perform pg_sleep(1); END; /
- 分布式不支持检测(死锁时,有锁等待超时报错)。
create table test_lock (id int,a date); insert into test_lock values (10,sysdate),(11,sysdate),(12,sysdate); CREATE OR REPLACE FUNCTION autonomous_test_lock(num1 int,num2 int) RETURNS integer LANGUAGE plpgsql AS $$ DECLARE num3 int := 4; PRAGMA AUTONOMOUS_TRANSACTION; BEGIN update test_lock set a=sysdate where id =11; RETURN num1+num2+num3; END; $$; start transaction; update test_lock set a=sysdate where id =11; call autonomous_test_lock(1,1); END;
- 自治事务函数不支持返回非out形式的record类型。
- 不支持修改自治事务的隔离级别。
- 不支持自治事务返回集合类型(setof)。
父主题: 自治事务
support.huaweicloud.com/distributed-devg-v2-gaussdb/gaussdb-12-0568.html
看了此文的人还看了
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格
推荐文章
- 华为云数据库 RDS for MySQL实例规格介绍
- 华为云数据库 RDS for PostgreSQL 实例规格介绍
- GaussDB规格_GaussDB数据库规格_高斯数据库规格_华为云
- GaussDB数据库安全_GaussDB收费吗_高斯数据库安全
- Flexus云服务变更规格
- GaussDB使用技巧_高斯数据库下载_高斯数据库使用技巧_华为云
- GaussDB视频教程_gaussdb查看表结构语句_高斯数据库视频教程_华为云
- GaussDB培训_GaussDB教程_高斯数据库培训-华为云
- GaussDB学习_gaussdb教程_高斯数据库学习_华为云
- GaussDB咋样_openGauss和GaussDB的区别_高斯数据库咋样_华为云