INSERT

如果发生异常,会自动回滚存储过程中进行的所有数据库更改。在此示例中,具有 WHEN OTHERS 子句的 EXCEPTION 部分捕获所有异常。将显示两个变量。SQLCODE 是标识发生的特定异常的数字。SQLERRM 是解释错误的文本消息。以下显示执行此存储...

高度兼容性

存储过程开发语言 存储过程开发语言是业务应用常用的一种数据库开发语言,被很多应用开发同学所熟悉,PolarDB PostgreSQL版(兼容Oracle)对Oracle存储过程语言有着很高的兼容度,包括COLLECTION、GOTO、SAVEPOINT、ROLLBACK TO、CURSOR、...

创建存储过程

普通的 SET 命令(没有 LOCAL)会重写 SET 子句,与对之前 SET LOCAL 命令的操作很相似,此命令的效果在退出存储过程后会保留,除非回滚当前事务。PRAGMA AUTONOMOUS_TRANSACTION PRAGMA AUTONOMOUS_TRANSACTION 是将存储过程设置为自治...

CREATE PROCEDURE

只有 PolarDB PostgreSQL版(兼容Oracle存储过程支持 IMMUTABLE、STABLE、STRICT、LEAKPROOF、COST、ROWS 及 PARALLEL { UNSAFE|RESTRICTED|SAFE } 属性。默认情况下存储过程创建为 SECURITY DEFINERS。在 plpgsql 中定义的存储过程创建...

PL 编译和调试

前提条件 ODC PL 支持现状 功能 支持的对象 支持的数据源 支持版本 编译 函数/存储过程/程序包 OceanBase Oracle、OB Cloud Oracle V2.2.7x、V3.0.0 及之后版本。调试 函数/存储过程/匿名块 OceanBase Oracle V3.2.3 及之后版本。运行 函数...

存储过程

存储过程支持内部开启事务块,进行事务提交(Commit)或者事务回滚(Rollback),而函数无此功能,只能整体提交或回滚一个事务。存储过程无类似Function的返回值,但是可以通过output参数获取返回结果。示例 示例一 本示例中将创建一个存储...

ROLLBACK

中止当前事务。语法 ROLLBACK[WORK]说明 ROLLBACK 回滚当前事务并导致废弃对事务执行的所有更新。...注意 如果运行时堆栈中存在 Oracle 样式的 SPL 存储过程,则在 plpgsql 过程中执行 ROLLBACK 会引发错误。示例 中止所有更改:ROLLBACK;

新建存储过程

概述 存储过程是一条或多条语句的集合,对数据库进行一系列复杂操作时,存储过程可以在数据库内将这类复杂操作封装成一个代码块,以便重复使用,从而减少数据库开发人员的工作量。存储过程旨在完成特定功能的 SQL 语句集,经编译创建并保存...

DBMS_UTILITY

DBMS_UTILITY包支持以下各种实用程序:函数/存储过程 类型 返回类型 说明 ANALYZE_DATABASE(method[,estimate_rows[,estimate_percent[,method_opt]]])存储过程 N/A 分析数据库表。ANALYZE_PART_OBJECT(schema,object_name[,object_type[,...

可编程对象

数据管理DMS支持变更存储程序(Stored Routines),并且提供了...说明 存储过程包体内容的业务逻辑需要使用者进行保障,DMS模块只进行存储过程关键要素的检测(不探测包体逻辑)。存储过程的执行不支持事务指定、不支持变更前镜像的备份处理。

PRAGMA AUTONOMOUS_TRANSACTION

现在,该存储过程中的回滚会在匿名块中的最终COMMIT命令之前删除匿名块中插入的两行(deptno 60和70)。BEGIN;INSERT INTO dept VALUES(50,'HR','DENVER');DECLARE PRAGMA AUTONOMOUS_TRANSACTION;BEGIN INSERT INTO dept VALUES(60,'...

PolarDB PostgreSQL(兼容Oracle)2.0版本与1.0版本...

数据库事务CSN事务快照机制、支持自治事务、支持语句级别事务回滚 PolarDB PostgreSQL版(兼容Oracle)2.0版本 中CSN事务快照是一种新的事务快照机制,用于提升MVCC性能,与原生PostgreSQL使用xid事务号列表作为事务快照不同,CSN快照使用...

PolarDB PostgreSQL(兼容Oracle)2.0版本商业化公告

数据库事务 CSN事务快照机制、支持自治事务、支持语句级别事务回滚 PolarDB PostgreSQL版(兼容Oracle)2.0版本 中CSN事务快照是一种新的事务快照机制,用于提升MVCC性能,与原生PostgreSQL使用xid事务号列表作为事务快照不同,CSN快照使用...

创建函数

普通的 SET 命令(没有 LOCAL)会重写 SET 子句,与对之前 SET LOCAL 命令的操作很相似,此命令的效果在退出存储过程后会保留,除非回滚当前事务。PRAGMA AUTONOMOUS_TRANSACTION PRAGMA AUTONOMOUS_TRANSACTION 是将函数设置为自治事务的...

CREATE FUNCTION

普通的 SET 命令(没有 LOCAL)会重写 SET 子句,与对之前 SET LOCAL 命令的操作很相似,此命令的效果在退出存储过程后会保留,除非回滚当前事务。PRAGMA AUTONOMOUS_TRANSACTION PRAGMA AUTONOMOUS_TRANSACTION 是将函数设置为自治事务的...

DROP PROCEDURE

PolarDB PostgreSQL版(兼容Oracle)允许重载存储过程名称,因此在 PolarDB PostgreSQL版(兼容Oracle)中,重载存储过程的 DROP PROCEDURE 命令需要使用输入参数数据类型给定的存储过程特征。使用 IFEXISTS、CASCADE 或 RESTRICT 与 ...

概述

SPL 是一种高效的过程式编程语言,用于为 PolarDB PostgreSQL版(兼容Oracle)编写自定义存储过程、函数、触发器和包。SPL提供如下特性:完整的过程编程功能,以补充 SQL 语言。一种通用语言,用于为 PolarDB PostgreSQL版(兼容Oracle)...

ROLLBACK

ROLLBACK 命令撤消当前事务期间执行的所有数据库更新,并结束当前事务。ROLLBACK[WORK];ROLLBACK 命令可在匿名块、存储...说明 如果运行时堆栈上存在 Oracle 样式的 SPL 过程,则在 PLPGSQL 存储过程中执行 COMMIT 或 ROLLBACK 将会引发错误。

DBS沙箱功能概览

相比多活热备技术,DBS沙箱功能还提供了数据回滚能力,支持快速回退脏数据。容灾恢复演练:根据沙箱的快速恢复能力和按需付费的模式,支持定期发起容灾恢复演练,满足对数据可靠性高度敏感的需求,更多信息,请参见 灾难恢复演练。历史数据...

概述

通过将SPL代码组织为子存储过程和子函数,可以有利地运用SPL存储过程和函数程序的能力和功能来构建结构良好且易于维护的程序。通过在SPL程序中声明子存储过程和子函数,可从相对较大的SPL程序中的不同位置多次调用相同的SPL代码。子存储...

存储过程中使用holdable cursor

背景信息 在存储过程中使用动态游标时,PostgreSQL原生不支持将动态游标设置为holdable模式(非存储过程中支持),如果在存储过程中打开一个动态游标并执行事务修改保存操作后,再次尝试获取数据将会报错,因为进行事务保存操作时当前事务...

存储过程中使用holdable cursor

背景信息 在存储过程中使用动态游标时,PostgreSQL原生不支持将动态游标设置为holdable模式(非存储过程中支持),如果在存储过程中打开一个动态游标并执行事务修改保存操作后,再次尝试获取数据将会报错,因为进行事务保存操作时当前事务...

ALTER PROCEDURE

options[EXTERNAL]SECURITY DEFINER 指定 SECURITY DEFINER 以指示服务器使用创建了存储过程的用户的特权执行该存储过程。为了实现兼容性而支持 EXTERNAL 关键字,但被忽略。[EXTERNAL]SECURITY INVOKER 指定 SECURITY INVOKER 以指示...

内置的安全审计规则

存储过程滥用 执行危险的操作,存储过程XP_REGDELETEKEY(SQLServer语法)高 存储过程滥用 执行危险的操作,存储过程XP_REGDELETEVALUE(SQLServer语法)高 存储过程滥用 执行危险的操作,存储过程XP_REGENUMVALUES(SQLServer语法...

2022年

存储过程中使用holdable cursor varbitx插件 PolarDB PostgreSQL版(兼容Oracle)对varbit插件进行了扩展,支持更多的BIT操作,可以覆盖更多应用场景。varbitx ZomboDB插件 ZomboDB是一个PostgreSQL扩展插件,支持原生的访问方式,为...

事务和异常

因此,如果事务回滚,则触发器中任何DML命令的效果也都将回滚。如果在触发器代码块中确实发生异常,但该异常在异常部分进行了捕获和处理,则触发器中任何DML命令的效果仍然会回滚。但是,触发语句本身不会回滚,除非应用程序强制回滚封装...

DBMS_OBFUSCATION_TOOLKIT

PolarDB PostgreSQL版(兼容Oracle)提供的DBMS_OBFUSCATION_TOOLKIT包支持使用MD5函数和存储过程,且与Oracle兼容。使用须知 2020年3月30日及之后创建的 PolarDB PostgreSQL版(兼容Oracle)集群,会在创建数据库时自动创建 DBMS_...

调用存储过程

您可从另一个 SPL 程序调用存储过程,只需指定该存储过程名称,后跟其参数(如果有),最后以分号结尾。name[([parameters])];其中:name 是存储过程的标识符。parameters 是实参的列表。说明 如果没有要传递的实参,则可以用空参数列表...

CALL

语法 CALL procedure_name '('[argument_list]')' 说明 使用 CALL 语句调用存储过程。要使用 CALL 语句,您必须对 CALL 语句调用的存储过程具有 EXECUTE 特权。参数 参数 说明 procedure_name procedure_name 是(可能是 schema 限定的)...

ROLLBACK PREPARED

简介 ROLLBACK PREPARED 回滚一个处于准备好状态的事务。语法 ROLLBACK PREPARED transaction_id 参数 transaction_id 要被回滚的事务的事务标识符。说明 要回滚一个准备好的事务,你必须是原先执行该事务的同一个用户或者是一个超级用户。...

使用pldebugger插件

PolarDB PostgreSQL版(兼容Oracle)支持多种存储过程语言,例如PLpgSQL、PL/Python、PL/Perl、PL/Tcl、PL/Java等等,您可以使用这些存储过程语言创建对应的函数或存储过程。PolarDB提供了pldebugger插件,可用于调试存储过程。前提条件 ...

使用pldebugger插件

PolarDB PostgreSQL版(兼容Oracle)支持多种存储过程语言,例如PLpgSQL、PL/Python、PL/Perl、PL/Tcl、PL/Java等等,您可以使用这些存储过程语言创建对应的函数或存储过程。PolarDB提供了pldebugger插件,可用于调试存储过程。前提条件 ...

概述

子程序是指子存储过程或子函数,它们在外观上与存储过程和函数几乎完全相同,但不同之处在于存储过程和函数是独立程序,它们单独存储在数据库中,并可通过其他SPL程序或从PSQL调用。子程序只能从创建它们的独立程序中调用。

ROLLBACK TO SAVEPOINT

如果一个先前打开的游标在一个保存点内被 FETCH 或 MOVE 命令所影响,而该保存点后来又被回滚,那么该游标将保持 FETCH 使它指向的位置(也就是说由 FETCH 导致的游标动作不会被回滚)。回滚也不能撤销关闭一个游标。不过,其他由游标查询...

DBMS_LOCK

PolarDB 支持 DBMS_LOCK.SLEEP 存储过程。表 1.DBMS_LOCK 函数/存储过程 函数/存储过程 返回类型 描述 SLEEP(seconds)N/A 暂停当前会话,暂停时长为您指定的秒数。SLEEP SLEEP存储过程用于暂停当前会话,暂停时长为您指定的秒数。SLEEP...

COMMIT

提交当前事务。语法 COMMIT[WORK]说明 ...在 plpgsql 过程中执行 COMMIT 时,如果运行时堆栈上有 Oracle 样式的 SPL 存储过程,则会引发错误。参数 参数 说明 WORK 可选关键字-没有任何效果。示例 提交当前事务并使所有更改永久保存:COMMIT;

DBMS_PROFILER

表 1.DBMS_PROFILER函数/存储过程 函数/存储过程 类型 返回类型 描述 FLUSH_DATA 函数、存储过程 Status code、exception 刷新当前会话中收集的性能数据。GET_VERSION(major OUT,minor OUT)存储过程 N/A 返回 DBMS_PROFILER 版本信息。...

ganos.parallel.transaction

指定并行操作时并行事务是否可以和主事务一起提交或回滚。数据类型 String 取值 transaction_commit(默认值):支持并行事务和主事务一起进行提交或回滚。fast_commit:不支持并行事务和主事务一起进行提交或回滚。示例 SET ganos....

匿名块

块通常作为存储过程、函数、子程序或触发器的一部分编写。存储过程、函数和触发器程序被命名并存储在数据库中以供重新使用。对于快速(一次性)执行(例如测试),您只需输入块而无需提供名称或将其存储在数据库中。此类型的块称为匿名块。...

DBMS_CRYPTO

DBMS_CRYPTO 包提供的函数和存储过程允许您对RAW、BLOB或CLOB数据进行加密或解密。您可以使用 DBMS_CRYPTO 函数来产生强加密型随机值。DBMS_CRYPTO函数/存储过程 函数/存储过程 返回类型 描述 DECRYPT(src,typ,key,iv)RAW 解密RAW类型的...
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
对象存储 云存储网关 文件存储NAS 弹性公网IP 短信服务 人工智能平台 PAI
新人特惠 爆款特惠 最新活动 免费试用