用法限制

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

高度兼容性

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

概述

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

SECURITY LABEL

argmode 一个函数,存储过程或者聚集函数参数的模式:IN、OUT、INOUT 或者 VARIADIC。如果被忽略,默认值会是 IN。注意 SECURITY LABEL 并不真正关心 OUT 参数,因为判断函数的身份时只需要输入参数。因此列出 IN、INOUT 和 VARIADIC 参数...

概述

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

匿名块

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

概述

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

COMMENT

argtype 一个函数,存储过程或者聚集函数参数的数据类型。large_object_oid 大对象的 OID。left_type right_type 操作符的参数的数据类型(可以是模式限定的)。对一个前缀后后缀操作符的缺失参数可以写 NONE。PROCEDURAL 这是一个噪声词。...

位置与命名参数表示法

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

DROP PROCEDURE

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

REF CURSOR 概述

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

概述

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

引用对象

在创建并初始化对象变量后,将使用以下形式的点表示法调用成员存储过程函数:object.prog_name object 是分配给对象变量的标识符。prog_name 是存储过程函数的标识符。静态存储过程函数不使用对象变量进行调用。而是,此类存储过程或...

RETURN 语句

RETURN 语句终止当前函数存储过程或匿名块并将控制权交还给调用者。有两种形式的 RETURN 语句。第一种形式的 RETURN 语句用于终止返回 void 的存储过程函数。语法为:RETURN;第二种形式的 RETURN 将值返回给调用者。语法为:RETURN ...

限定符

限定条件的一些示例如下:由其所属 schema 限定的存储过程函数名称,例如,schema_name.procedure_name(.)。由其所属 schema 限定的触发器名称,例如,schema_name.trigger_name。由其所属表限定的列名称,例如,emp.empno。由其所属 ...

新建函数

说明 Oracle 模式下函数存储过程均包含 IN/OUT/INOUT 参数;MySQL 模式下只包含 IN 参数,而存储过程包含 IN/OUT/INOUT 参数。步骤 4:确认创建函数 单击 确定,进入 SQL 创建确认页面。步骤 5:编辑函数语句 在 SQL 创建确认页面,编辑...

GOTO 语句

label 必须在函数存储过程或匿名块的范围内是唯一的。要标记语句,请使用语法:<<label>>statement statement 是程序跳转到的执行点。您可以标记赋值语句、任何 SQL 语句(如 INSERT、UPDATE、CREATE 等)和所选的存储过程语言语句。可...

声明变量

例如,将 SYSDATE 分配给 DATE 类型的变量会使该变量具有当前调用的时间,而不是预编译存储过程函数时的时间。以下存储过程说明一些变量声明,它们使用包括字符串和数值表达式的默认值。CREATE OR REPLACE PROCEDURE dept_salary_rpt(p_...

块关系

块实现独立的存储过程函数程序、匿名块、触发器、包、子存储过程和子函数。标识符(变量、游标、类型或子程序)是块本地的,意味着它在给定块的声明部分中声明。此类本地标识符可从块的可执行部分和可选的异常部分访问。父块包含另一个块...

创建对象类型

SELF参数是成员存储过程函数中的第一个参数,无论它是否在参数列表中明确声明。以下代码片段为Emp_obj_typ定义对象类型主体:CREATE OR REPLACE TYPE BODY emp_obj_typ AS MEMBER PROCEDURE display_emp(SELF IN OUT emp_obj_typ)IS ...

CALL

参数 参数 说明 procedure_name procedure_name 是(可能是 schema 限定的)存储过程名称。argument_list argument_list 指定存储过程所需参数的列表,以逗号分隔。请注意,argument_list 的每个成员对应于存储过程所需的一个形参。每个...

概述

本章介绍 PolarDB 提供的内置包及其使用...对于一些特殊的内置包,非超级用户在使用这些包中的函数存储过程前,必须被授予执行权限。对于大多数内置包,默认情况下,可以直接将执行权限授予public组。关于授权的详细信息请参见 GRANT 命令。

GRANT on Database Objects

对于函数,PolarDB PostgreSQL版(兼容Oracle)需要在函数名称后包括所有输入(IN、IN OUT)参数数据类型(如果没有函数参数,则包含空括号)。对于存储过程,如果其中具有一个或多个输入参数,则必须指定所有输入参数数据类型。在 Oracle ...

集群参数默认值说明

参数说明 PolarDB PostgreSQL版(兼容Oracle参数默认值的设置,综合了性能、可用性以及可靠性方面的考虑,与社区版本默认值不一定相同。特别是以下参数,PolarDB根据最优性能原则进行了默认设定,您可以根据自己的需求在控制台自行修改。...

ALL_SOURCE

ALL_SOURCE 视图提供以下程序类型的源代码列表:函数存储过程、触发器、包规格和包正文。名称 类型 说明 owner TEXT 程序所有者的用户名。schema_name TEXT 程序所属 schema 的名称。name TEXT 程序的名称。type TEXT 程序的类型,可能值...

用户定义的异常

在实现用户定义的异常之前,必须在函数存储过程、包或匿名块的声明部分中声明该异常。这样,即可使用 RAISE 语句引发该异常:DECLARE exception_name EXCEPTION;BEGIN.RAISE exception_name;END;exception_name 是该异常的名称。未处理的...

pg_language

目录 pg_language 注册了可用于编写函数存储过程的语言。列名称 列类型 描述 oid oid 行标识符。lanname name 语言的名字。lanowner oid 语言的拥有者。lanispl bool 内部语言为假(如SQL),用户定义语言为真。当前,pg_dump仍然使用这...

调用存储过程

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

DROP FUNCTION

argtype 如果函数有参数,这是函数参数的数据类型(可以是模式限定的)。CASCADE 自动删除依赖于该函数的对象(例如操作符和触发器),然后删除所有依赖于那些对象的对象。RESTRICT 如果有任何对象依赖于该函数,则拒绝删除它。这是默认值...

ST_length

通常trajectory对象中会有srid值,如果trajectory对象没有srid值,可通过函数参数srid指定,如果sird仍未知,函数将默认srid为4326。示例 select st_length(traj)from traj where id=2;st_length-13494.6660605311(1 row)

RAISE_APPLICATION_ERROR

利用 RAISE_APPLICATION_ERROR 存储过程,开发者可通过导致异常,有意中止从中调用该存储过程的 SPL 程序中的处理。异常的处理方式与 异常处理 中描述的相同。此外,RAISE_APPLICATION_ERROR 存储过程还会向程序提供用户定义的代码和错误...

银泰商业

使用 PolarDB PostgreSQL版(兼容Oracle)后,存储过程可以通过ADAM(Advanced Database&Application Migration)的工具,较快地完成Oracle存储过程到 PolarDB PostgreSQL版(兼容Oracle)的迁移。应用只需要修改数据库连接地址和数据库...

概述

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

创建包规格

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

使用前置声明

前置声明是子存储过程或子函数名称、形参和子函数的规格;如果是子函数,则返回类型。完整子程序规格(由可选声明部分、可执行部分和可选异常部分组成)必须与前置声明在同一声明部分中指定,但可出现在用前置声明调用此子程序的其他子程序...

参数中使用默认值

以下简单存储过程演示了如何使用分配运算符将SYSDATE的默认值设置到参数hiredate中:CREATE OR REPLACE PROCEDURE hire_emp(p_empno NUMBER,p_ename VARCHAR2,p_hiredate DATE:=SYSDATE)IS BEGIN INSERT INTO emp(empno,ename,hiredate)...

支持向量机

是 随机 随机 头部 尾部 核函数类型:多项式 参数参数描述 是否必填 参数默认参数范围 核函数维度/否 3[1,100]核函数类型:径向、多项式、sigmoid 参数参数描述 是否必填 参数默认参数范围 核函数系数方式 比例:系数=1/(特征...

管理存储过程

概述 在 OceanBase 开发者中心(OceanBase Developer Center,ODC)首页单击连接名进入连接后,在左导航栏中单击 存储过程 标签可查看存储过程列表,在存储过程列表中显示当前连接的数据库中存在的存储过程对象。在存储过程列表中,可查看...

包规格

列的类型通过编写 tablename.columnname%TYPE 来引用,使用此格式有时候能够帮助存储过程独立于表定义的变化。DEFAULT value 如果调用中未提供输入参数,则 DEFAULT 子句为输入参数提供默认值。不能为具有模式 IN OUT 或 OUT 的参数指定 ...

DROP FUNCTION

argtype 函数参数的数据类型。(指定 argtype 与 Oracle 数据库不兼容,它仅适用于 PolarDB PostgreSQL版(兼容Oracle)。CASCADE 自动删除依赖于函数的对象(如运算符或触发器),并就此删除依赖于这些对象的所有对象。RESTRICT 如果存在...
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
对象存储 文件存储 CPFS 云原生数据仓库 AnalyticDB PostgreSQL版 弹性公网IP 短信服务 人工智能平台 PAI
新人特惠 爆款特惠 最新活动 免费试用