高度兼容性

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

DROP PROCEDURE

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

概述

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

银泰商业

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

创建存储过程

存储过程是作为单个 SPL 程序语句调用的独立 SPL 程序。调用时,存储过程可选择以输入参数的形式从调用方接收值,并可选择以输出参数的形式向调用方返回值。CREATE PROCEDURE 命令可定义并命名一个将存储在数据库中的独立存储过程。如果...

概述

示例 下面是一个采用参数的存储过程的示例:CREATE OR REPLACE PROCEDURE emp_query(p_deptno IN NUMBER,p_empno IN OUT NUMBER,p_ename IN OUT VARCHAR2,p_job OUT VARCHAR2,p_hiredate OUT DATE,p_sal OUT NUMBER)IS BEGIN SELECT empno,...

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

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

CALL

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

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

本文介绍了 PolarDB PostgreSQL版(兼容Oracle2.0版本相较于 PolarDB PostgreSQL版(兼容Oracle)1.0版本的差异说明。概述 相较于 PolarDB PostgreSQL版(兼容Oracle)1.0版本,PolarDB PostgreSQL版(兼容Oracle2.0版本基于新的兼容性...

PL 编译和调试

CREATE OR REPLACE PROCEDURE PROC_VARCHAR2(p1 in VARCHAR2,p2 out VARCHAR2,p3 in out VARCHAR2)as v1 varchar2(64):='hello,oceanbase';begin dbms_output.put_line(p1);dbms_output.put_line(p3);p2:='hello,odc';end;在 SQL 开发窗口...

DBMS_OUTPUT

语法 DBMS_OUTPUT.GET_LINE(lines OUT VARCHAR2[],numlines INOUT INTEGER);参数说明 参数 说明 lines 用于从消息缓冲区接收文本行的数组。numlines IN参数表示希望从缓冲区中接收的文本行的数量。OUT参数返回实际读取到的文本行的数量。...

新建存储过程

参数设置 属性 是否必填 默认 模式 名称 必填 空 Oracle/MySQL 模式 必填 IN Oracle/MySQL 类型 必填 VARCHAR Oracle/MySQL 长度 必填 45 MySQL 默认值 非必填 空 Oracle 步骤 3:确定新建存储过程 单击 确定,进入 SQL 创建确认页面。...

ROLLBACK

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

CREATE PROCEDURE

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

DBMS_APPLICATION_INFO

READ_MODULE 语法 DBMS_APPLICATION_INFO.READ_MODULE(module_name OUT VARCHAR2,action_name OUT VARCHAR2);参数 参数 描述 module_name 当前会话通过调用SET_MODULE将模块名称设置为最后一个值。action_name 当前会话通过调用SET_MODULE...

使用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插件,可用于调试存储过程。前提条件 ...

DBMS_PROFILER

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

DBMS_ALERT

语法 DBMS_ALERT.WAITANY(name OUT VARCHAR2,message OUT VARCHAR2,status OUT INTEGER,timeout IN NUMBER DEFAULT MAXWAIT);参数说明 参数 说明 name 消息所在的告警的名称。message 告警的具体消息。status 返回的状态码。取值如下:0:...

GRANT on Database Objects

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

新建函数

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

DBMS_UTILITY

语法 DBMS_UTILITY.DB_VERSION(version OUT VARCHAR2,compatibility OUT VARCHAR2);参数说明 参数 说明 version 数据库版本。compatibility 数据库兼容性设置(忽略)。示例 该示例展示了如何获取数据库的版本信息。DECLARE version ...

存储过程中使用holdable cursor

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

存储过程中使用holdable cursor

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

位置与命名参数表示法

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

在参数中使用默认值

以下简单存储过程演示了如何使用分配运算符将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)...

对象类型组成部分

[,parm2[IN|IN OUT|OUT]datatype2[DEFAULT value2]].)]|FUNCTION func_name[([SELF[IN|IN OUT]name][,parm1[IN|IN OUT|OUT]datatype1[DEFAULT value1]][,parm2[IN|IN OUT|OUT]datatype2[DEFAULT value2]].)]RETURN return_type } 其中...

内置的安全审计规则

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

DBMS_SQL

表 1.DBMS_SQL函数/存储过程 函数/存储过程 类型 返回类型 说明 BIND_VARIABLE(c,name,value[,out_value_size])存储过程 N/A 将值绑定到变量。BIND_VARIABLE_CHAR(c,name,value[,out_value_size])存储过程 N/A 将CHAR值绑定到变量。BIND_...

CREATE PACKAGE

定义新的包规格。语法 CREATE[OR REPLACE]PACKAGE name[AUTHID { DEFINER|CURRENT_USER }]...CREATE OR REPLACE PACKAGE empinfo IS emp_name VARCHAR2(10);PROCEDURE get_name(p_empno NUMBER);FUNCTION display_counter RETURN INTEGER;END;

DBMS_MVIEW

语法如下:GET_MV_DEPENDENCIES(list IN VARCHAR2,deplist OUT VARCHAR2);参数 参数名称 描述 list list 用于指定物化视图的名称,或物化视图名称中用逗号分隔的列表。deplist deplist 是一个模式限定依赖关系中用逗号分隔的列表。示例 ...

DBMS_UTILITY

DB_VERSION(version OUT VARCHAR2,compatibility OUT VARCHAR2)参数 参数 描述 version 数据库版本号。compatibility 数据库的兼容性设置(其含义由实施定义)。示例 以下匿名块显示数据库版本信息。DECLARE v_version VARCHAR2(150);v_...

DBMS_OUTPUT

语法如下:GET_LINE(line OUT VARCHAR2,status OUT INTEGER)参数 参数名称 参数说明 line 用于从消息缓冲区接收文本行的变量。status 如果从消息缓冲区返回一行文本,返回0。如果没有文本返回,返回1。示例 下面的匿名代码块,将表 emp 中...

DBMS_PIPE

语法 DBMS_PIPE.UNPACK_MESSAGE(item OUT VARCHAR2);DBMS_PIPE.UNPACK_MESSAGE(item OUT NUMBER);DBMS_PIPE.UNPACK_MESSAGE(item OUT DATE);DBMS_PIPE.UNPACK_MESSAGE_RAW(item OUT RAW);参数说明 参数 说明 item 从本地消息缓冲区获取数据...

DBMS_OBFUSCATION_TOOLKIT

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

DBMS_SESSION

语法 该存储过程使用了自定义类型作为参数,该类型的语法和存储过程的语法如下:TYPE AppCtxRecTyp IS RECORD(namespace VARCHAR2(30),attribute VARCHAR2(30),value VARCHAR2(256));TYPE AppCtxTabTyp IS TABLE OF AppCtxRecTyp;DBMS_...

DBMS_MVIEW

语法 PROCEDURE GET_MV_DEPENDENCIES(mvlist IN VARCHAR2,deplist OUT VARCHAR2);参数说明 参数 说明 mvlist 被物化视图依赖的对象列表。deplist 所有依赖指定对象的物化视图列表。示例 该示例获取依赖于指定对象的所有物化视图。CREATE ...

DBMS_AQ

PolarDB 通过以下SQL命令为 DBMS_AQ 包提供扩展功能:ALTER QUEUE ALTER QUEUE TABLE CREATE QUEUE CREATE QUEUE TABLE DROP QUEUE DROP QUEUE TABLE 表 1.DBMS_AQ 函数/存储过程 函数/存储过程 返回类型 说明 ENQUEUE N/A 发布消息到队列...

CREATE TYPE BODY

如果未明确声明 SELF,则其参数模式默认为 IN OUT(对于成员存储过程)和 IN(对于成员函数)。argname 参数的名称。参数在方法主体中通过该名称进行引用。argtype 方法参数的数据类型。参数类型可以是基本数据类型或用户定义类型,如嵌套...
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
文件存储 CPFS 云存储网关 对象存储 弹性公网IP 短信服务 人工智能平台 PAI
新人特惠 爆款特惠 最新活动 免费试用