高度兼容性

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

对象类型组成部分

如果未明确声明SELF,则其参数模式默认为IN OUT(对于成员存储过程)和IN(对于成员函数)。静态方法不能重写(OVERRIDING和STATIC不能在method_spec中一起指定)。静态方法必须是可实例化的(NOT INSTANTIABLE和STATIC不能在method_spec中...

CREATE TYPE BODY

如果未明确声明 SELF,则其参数模式默认为 IN OUT(对于成员存储过程)和 IN(对于成员函数)。argname 参数的名称。参数在方法主体中通过该名称进行引用。argtype 方法参数的数据类型。参数类型可以是基本数据类型或用户定义类型,如嵌套...

DBMS_PROFILER

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

新建函数

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

银泰商业

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

概述

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

DROP PROCEDURE

如果这是一个重载存储过程,则必须为存储过程指定所有输入(IN、IN OUT)参数的数据类型。(该要求与 Oracle 数据库不兼容。在 Oracle 中,仅指定存储过程名称。PolarDB PostgreSQL版(兼容Oracle)允许重载存储过程名称,因此在 PolarDB ...

概述

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

内置的安全审计规则

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

DBMS_OBFUSCATION_TOOLKIT

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

ROLLBACK

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

使用pldebugger插件

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

COMMIT

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

使用pldebugger插件

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

CREATE PACKAGE

如果包括此子句,则使用全常量参数对存储过程的任何调用将立即替换为存储过程值。RNDS|RNPS|TRUST|WNDS|WNPS 为了兼容性目的而接受这些关键字,但会忽略它们。示例 包规格 empinfo 包含三个公共组件:公共变量、公共存储过程和公共函数。...

SECURITY LABEL

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

CALL

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

用法限制

允许的游标变量参数模式 操作 IN IN OUT OUT OPEN 否 是 否 FETCH 是 是 否 CLOSE 是 是 否 例如,如果一个存储过程对声明为存储过程形参的游标变量执行所有这三项操作OPEN FOR、FETCH和CLOSE,则必须使用IN OUT模式声明该参数。

参数模式

参数有INOUTIN OUT三种模式。形参的以下特点取决于其模式:调用存储过程或函数时的初始值。被调用存储过程或函数是否可修改形参。实参值如何从调用程序传递到被调用程序。当被调用程序中发生未处理的异常时,形参值会发生什么。以下...

删除存储过程

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

DBMS_SESSION

PolarDB PostgreSQL版(兼容Oracle)支持使用DBMS_SESSION.SET_ROLE存储过程。函数/存储过程 函数/存储过程 返回类型 说明 SET_ROLE(role_cmd)N/A 执行 SET_ROLE 语句,后跟 role_cmd 中指定的字符串值。与Oracle相比,PolarDB PostgreSQL...

存储过程和函数中的编译错误

当 PolarDB PostgreSQL版(兼容Oracle)分析程序编译存储过程或函数时,它们确认CREATE语句和程序主体(程序中 AS 关键字后面的那部分)符合SPL和SQL构造的语法规则。默认情况下,如果分析程序检测到错误,服务器将终止编译过程。请注意,...

COMMENT

argmode 一个函数,存储过程或者聚集函数的参数的模式:INOUT、INOUT 或者 VARIADIC。如果被省略,默认值是 IN。注意 COMMENT 并不真正关心 OUT 参数,因为决定函数的身份只需要输入参数。因此列出 IN、INOUT 和 VARIADIC 参数就足够了。...

新建存储过程

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

集合变量的赋值

将其作为 OUT 或 IN OUT 参数传递给子程序,然后在子程序内赋值。仅支持变长数组和嵌套表作为子程序的参数。不允许关联数组作为子程序的参数。使用 collection(index)=value 的形式为集合变量的元素赋值。说明 仅当两个集合具有相同的或是...

GRANT on Database Objects

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

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

函数/存储过程支持INOUT、INOUT参数,用于对参数进行值的引用传递;匿名块支持变量绑定和两阶段运行;支持 constant 变量兼容;支持隐式声明的 record 类型循环变量;支持存储过程中的:NEW/:OLD 语法现象;支持触发器中使用无返回值;...

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

函数/存储过程支持INOUT、INOUT参数,用于对参数进行值的引用传递;匿名块支持变量绑定和两阶段运行;支持 constant 变量兼容;支持隐式声明的 record 类型循环变量;支持存储过程中的:NEW/:OLD 语法现象;支持触发器中使用无返回值;...

概述

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

包规格

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

示例

CREATE OR REPLACE PROCEDURE open_emp_by_dept(p_emp_refcur IN OUT SYS_REFCURSOR,p_deptno emp.deptno%TYPE)IS BEGIN OPEN p_emp_refcur FOR SELECT empno,ename FROM emp WHERE deptno=p_deptno;END;这第三个变体使用 SELECT 命令打开...

ALTER PROCEDURE

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

调用存储过程

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

创建存储过程

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

在参数中使用默认值

形参声明的常规形式如下:(name[IN|OUT|IN OUT]data_type[{DEFAULT|:=} expr])name是分配给参数的标识符。IN|OUT|IN OUT指定参数模式。data_type是分配给变量的数据类型。expr是分配给参数的默认值。如果未包括DEFAULT子句,则调用方必须为...

日志字段

防火墙日志字段 互联网边界防火墙 acl_rule_id aliuid app_dpi_state app_name direction domain dst_ip dst_port end_time in_bps in_packet_bytes in_packet_count in_pps ip_protocol ips_ai_rule_id ips_rule_id log_type loose_allow_...

PL 编译和调试

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

概述

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

DBMS_LOCK

PolarDB 支持 DBMS_LOCK.SLEEP 存储过程。表 1.DBMS_LOCK 函数/存储过程 函数/存储过程 返回类型 描述 SLEEP(seconds)N/A 暂停当前会话,暂停时长为您指定的秒数。SLEEP SLEEP存储过程用于暂停当前会话,暂停时长为您指定的秒数。SLEEP...
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
对象存储 云存储网关 文件存储 CPFS 弹性公网IP 短信服务 人工智能平台 PAI
新人特惠 爆款特惠 最新活动 免费试用