高度兼容性

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

限定符

例如,如果从程序内调用的两个存储过程具有相同名称但属于两不同的 schema,或者同程序内的表列和 SPL 变量使用相同的名称。应尽可能避免使用限定的名称。在本章中,采用以下约定来避免命名冲突:SPL 程序声明部分中声明的所有变量均带...

用法限制

此外,下表显示了用作存储过程或函数参数的游标变量允许的参数模式(具体取决于存储过程或函数中对游标变量的操作)。表 1.允许的游标变量参数模式 操作 IN IN OUT OUT OPEN 否 是 否 FETCH 是 是 否 CLOSE 是 是 否 例如,如果一个存储...

创建包规格

包规格包含可从包外部引用的包中所有元素的定义。这些定义称为包的公共元素,用作包接口。以下代码示例是包规格:Package ...此包规格由两函数和两个存储过程组成。为方便起见,我们还可以添加 OR REPLACE 子句到 CREATE PACKAGE 语句。

存储过程中使用holdable cursor

因此 PolarDB PostgreSQL版(兼容Oracle)为了满足用户需求,支持在PLSQL中使用holdable模式打开存储过程游标。PostgreSQL原生类典型的出错场景如下:CREATE TABLE test001(id numeric);INSERT INTO test001 VALUES(1),(2),(3);CREATE OR...

存储过程中使用holdable cursor

因此 PolarDB PostgreSQL版(兼容Oracle)为了满足用户需求,支持在PLSQL中使用holdable模式打开存储过程游标。PostgreSQL原生类典型的出错场景如下:CREATE TABLE test001(id numeric);INSERT INTO test001 VALUES(1),(2),(3);CREATE OR...

概述

这样便可创建 SPL 程序逻辑,该逻辑从结果集中检索行,对该行中的数据进行一些处理,然后检索下行并重复该存储过程游标最常用在 FOR 或 WHILE 循环的上下文中。SPL 逻辑中应包含一个条件测试,用于检测何时到达结果集的末尾,以便...

内置的安全审计规则

CMDSHELL执行系统命令(SQLServer语法)高 存储过程滥用 执行危险的操作,存储过程XP_SENDMAIL(SQLServer语法)高 存储过程滥用 执行危险的操作,存储过程XP_RUNWEBTASK(SQLServer语法)高 存储过程滥用 执行危险的操作,存储过程XP_...

位置与命名参数表示法

在将参数传递给函数或存储过程时,您可以使用位置或命名参数表示法。如果使用位置表示法指定参数,则必须按其声明的顺序列出参数;如果使用命名表示法指定参数,则参数的顺序无关紧要。要使用命名表示法指定参数,请列出每参数的名称,...

DBMS_RANDOM

1.DBMS_RANDOM 函数/存储过程 函数/存储过程 返回类型 描述 INITIALIZE(val)N/A 使用指定的种子值初始化 DBMS_RANDOM 随机包。已弃用,但支持向后兼容。NORMAL()NUMBER 返回一个NUMBER类型的随机数。RANDOM INTEGER 返回的是一个INTEGER...

删除存储过程

通过使用DROP PROCEDURE命令,可从数据库中删除存储过程。DROP PROCEDURE[IF EXISTS]name[(parameters)][CASCADE|RESTRICT];其中,name 是要删除的存储过程的名称。说明 某些情况下(例如,这是一个重载存储过程),在 PolarDB PostgreSQL...

读写数据

SYSTEM_TIME:表示获取的cursor指向该大于等于该时间戳的第一条record。说明 GetCursorResult getCursor(String projectName,String topicName,String shardId,CursorType type);GetCursorResult getCursor(String projectName,String ...

REF CURSOR 概述

游标变量是一个实际包含指向查询结果...REF CURSOR 类型可以作为参数传递到存储过程和函数或从存储过程和函数传递。函数的返回类型也可以是 REF CURSOR 类型。这提供了通过在程序之间传递游标变量,来将游标上的操作模块化为单独程序的能力。

DROP PROCEDURE

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

CALL

本文简单介绍CALL与使用方式。语法 CALL procedure_name '('[argument_list]')' 说明 使用 CALL 语句调用存储过程。...示例 CALL 语句可采用多种形式之,具体取决于存储过程所需的参数:CALL update_balance();CALL update_balance(1,2,3);

概述

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

GRANT on Database Objects

这是因为在 Oracle 中,所有程序共享同一个命名空间,而在 PolarDB PostgreSQL版(兼容Oracle)中,函数、存储过程和包具有它们自己的单独命名空间,从而在某种程度上允许重载程序名称。ALL PRIVILEGES 一次性授予所有可用特权。其他命令...

CLOSE

CLOSE 用于释放与一个已打开游标相的资源。简介 CLOSE 释放与一个已打开游标相关的资源。在游标被关闭后,不允许在其上做后续的操作。当不再需要使用一个游标时应该关闭它。当一个事务被 COMMIT 或者 ROLLBACK 终止时,每一个非可保持的已...

DBMS_APPLICATION_INFO

参数 参数 描述 client_info 当前会话提供给SET_CLIENT_INFO存储过程的最后一个客户信息。READ_MODULE 语法 DBMS_APPLICATION_INFO.READ_MODULE(module_name OUT VARCHAR2,action_name OUT VARCHAR2);参数 参数 描述 module_name 当前会话...

SECURITY LABEL

表、聚集、域、外部表、函数、存储过程、例程、序列、类型和视图的名称可以是模式限定的。provider 这标签相关联的提供者的名称。所提到的提供者必须已被载入并且必须赞同所提出的标签操作。如果正好只载入了一个提供者,可以出于简洁的...

DBMS_CRYPTO

DBMS_CRYPTO 包提供的函数和存储过程允许您对RAW、BLOB或CLOB数据进行加密或解密。您可以使用 DBMS_CRYPTO 函数来产生强加密型随机值。DBMS_CRYPTO函数/存储过程 函数/存储过程 返回类型 描述 DECRYPT(src,typ,key,iv)RAW 解密RAW类型的...

概述

使用存储过程和函数的一个重要方面是,能够将数据从调用程序传递给存储过程或函数,并能够从存储过程或函数接收回数据。这将通过使用参数来实现。参数在存储过程或函数定义中声明,在存储过程或函数名称后面用圆括号(())括起。在存储过程...

CREATE PROCEDURE

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

创建子存储过程

声明部分中指定的PROCEDURE子句用于定义和命名该块本地的子存储过程。术语 块 指 SPL 块结构,该结构由可选的声明部分、必需的可执行部分和可选的异常部分组成。块是独立存储过程和函数、匿名块、子程序、触发器、包和对象类型方法的结构。...

创建存储过程

存储过程重载是项 PolarDB PostgreSQL版(兼容Oracle)功能-独立存储过程的重载与 Oracle 数据库不兼容。要更新现有存储过程的定义,可使用 CREATEOR REPLACE PROCEDURE。无法以这种方式更改存储过程的名称或参数类型(如果您尝试过,...

调用存储过程

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

版本说明

版本发布记录 如果您是第一次使用GTS或专有云用户,请选用2.8.x系列版本,推荐使用最新版本。版本 发布时间 说明 2.8.94 2023-05-25 监听获取txc-server的vip,取代频繁请求刷新机制。支持polardb-o、pgsql的interval时间格式。优化多处SQL...

表达式索引

而如第一个例子所示,当表达式只是一个函数调用时可以省略掉圆括号。索引表达式的维护代价较为昂贵,因为在每一个行被插入或更新时都得为它重新计算相应的表达式。然而,索引表达式在进行索引搜索时却 不 需要重新计算,因为它们的结果已经...

DBMS_OBFUSCATION_TOOLKIT

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

pg_cast

在 pg_cast 里列出的类型转换函数必须总是以转换的源类型作为它的第一个参数类型,并且返回转换的目标类型作为它的结果类型。一个类型转换函数最多有三个参数。如果出现了第二个参数,必须是 integer 类型;它接受与目标类型关联的修饰词,...

新建存储过程

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

Oracle节点

步骤二:开发Oracle任务(可选)选择Oracle数据源 如果您的工作空间创建了多个Oracle数据源,则需先在Oracle节点编辑页面选择合适的数据源。如果仅创建了一个Oracle数据源,则默认使用该数据源进行开发操作。说明 Oracle节点仅支持使用JDBC...

表基础

第一个列名为 first_column 且数据类型为 text;第二个列名为 second_column 且数据类型为 integer。类型名称通常也是标识符,但是也有些例外。注意列的列表由逗号分隔并被圆括号包围。当然,前面的例子是非常不自然的。通常,我们为表和列...

ROLLBACK

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

COMMIT

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

PLV8

size 参数(默认为1000)是第一次调用中分配的内存大小。一旦分配内存,size 值就不会改变。WindowObject.set_partition_local(obj):存储分区本地值,您可以通过 get_partition_local()检索该值。此函数在内部使用 JSON.stringify()来序列...

PLV8

size 参数(默认为1000)是第一次调用中分配的内存大小。一旦分配内存,size 值就不会改变。WindowObject.set_partition_local(obj):存储分区本地值,您可以通过 get_partition_local()检索该值。此函数在内部使用 JSON.stringify()来序列...

游标属性

游标状态%ISOPEN%FOUND%NOTFOUND%ROWCOUNT 在OPEN之前 False INVALID_CURSOR异常 INVALID_CURSOR异常 INVALID_CURSOR异常 在OPEN之后,第一个FETCH之前 True Null Null 0 第一个成功的FETCH之后 True True False 1 n个成功的FETCH之后...

PLV8

size 参数(默认为1000)是第一次调用中分配的内存大小。一旦分配内存,size 值就不会改变。WindowObject.set_partition_local(obj):存储分区本地值,您可以通过 get_partition_local()检索该值。此函数在内部使用 JSON.stringify()来序列...

ROLLBACK

ROLLBACK 命令撤消当前事务期间执行的所有数据库更新,并结束当前事务。ROLLBACK[WORK];ROLLBACK 命令可在匿名块、存储...说明 如果运行时堆栈上存在 Oracle 样式的 SPL 过程,则在 PLPGSQL 存储过程中执行 COMMIT 或 ROLLBACK 将会引发错误。
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
文件存储 CPFS 对象存储 云存储网关 弹性公网IP 短信服务 人工智能平台 PAI
新人特惠 爆款特惠 最新活动 免费试用