调用存储过程

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

CALL

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

ALTER PROCEDURE

[EXTERNAL]SECURITY INVOKER 指定 SECURITY INVOKER 以指示服务器使用正在调用存储过程的用户的特权执行该存储过程。为了实现兼容性而支持 EXTERNAL 关键字,但被忽略。为了实现兼容性而支持 RESTRICT 关键字,但被忽略。示例 以下命令指定...

高度兼容性

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

概述

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

批量获取创建列存索引的DDL语句

存储过程调用后,调用存储过程 dbms_imci.columnar_advise()时,不会立即输出DDL语句,而是缓存在内存中,缓存过程中不会记录重复的表名和列名。最后通过调用存储过程 dbms_imci.columnar_advise_show()或 dbms_imci.columnar_advise_...

在参数中使用默认值

第三个参数(p_hiredate)默认为SYSDATE的值:hire_emp(7575,'Clark')如果在调用存储过程时包括实参的值,则该值优先于默认值:hire_emp(7575,'Clark','15-FEB-2010')添加了一名新员工,其录用日期为February15,2010,而与SYSDATE的当前值...

位置与命名参数表示法

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

参数模式

形参的以下特点取决于其模式:调用存储过程或函数时的初始值。被调用存储过程或函数是否可修改形参。实参值如何从调用程序传递到被调用程序。当被调用程序中发生未处理的异常时,形参值会发生什么。以下内容根据其模式总结了参数的行为。IN...

匿名块

块通常作为存储过程、函数、子程序或触发器的一部分编写。存储过程、函数和触发器程序被命名并存储在数据库中以供重新使用。...以下各节讨论如何创建可以存储在数据库中并被另一个存储过程、函数或应用程序反复调用存储过程或函数。

DBMS_OUTPUT

示例 该示例展示了如何通过DBMS_OUTPUT.ENABLE允许消息输出存储过程调用的功能。Hello,PolarDB!BEGIN DBMS_OUTPUT.ENABLE;SET SERVEROUTPUT=ON;DBMS_OUTPUT.PUT_LINE('Hello,PolarDB!');END;说明 在SERVEROUTPUT开启时,无需调用 DBMS_...

DBMS_RANDOM

示例 下列代码段调用 SEED 存储过程调用时将种子值设为abc123:DBMS_RANDOM.SEED('abc123');STRING STRING 函数返回的是用户指定形式的一个随机VARCHAR2字符串。语法如下:result VARCHAR2 STRING(opt IN CHAR,len IN NUMBER)参数 参数...

引用对象

下面是此匿名块的输出:Employee No:9001 Name:JONES Street:123 MAIN STREET City/State/Zip:EDISON,NJ 08817 以下匿名块创建 dept_obj_typ 的实例并调用成员存储过程 display_dept:DECLARE v_dept DEPT_OBJ_TYP:=dept_obj_typ(20);...

RAISE_APPLICATION_ERROR

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

块关系

例如,给定一个独立的存储过程,则在此存储过程的声明部分中声明的子程序全都位于同一层级,例如在层级 1 调用存储过程。该独立存储过程中声明的子程序的声明部分中的其他子程序位于下一层级,即层级 2。同辈块是具有同一父块的一组块...

DBMS_APPLICATION_INFO

当前操作终止时,如果有下一个操作,则使用下一个操作的名称调用存储过程。否则,调用NULL。说明 操作名称长度超过64个字节将被截断。SET_CLIENT_INFO 语法 DBMS_APPLICATION_INFO.SET_CLIENT_INFO(client_info IN VARCHAR2);参数 参数 ...

DBMS_AQ

目前,仅支持调用PL/SQL存储过程调用应采取以下形式:plsql:/schema.procedure 其中:schema:指定存储过程所在的schema。procedure:指定待通知的存储过程的名称。context RAW(16)回调存储过程需要的用户定义的值。count count 是 reg_...

DBMS_APPLICATION_INFO

当此操作终止时,如果存在其他操作,则使用下一个操作调用当前存储过程。否则,调用NULL。说明 操作名称长度超过64个字节将被截断。SET_CLIENT_INFO 语法 DBMS_APPLICATION_INFO.SET_CLIENT_INFO(client_info IN VARCHAR2);参数 参数 说明 ...

关闭游标

从游标结果集中检索到所有需要的行后,必须关闭游标。关闭后,将无法再访问结果集。...调用存储过程时会生成以下输出。员工编号 7369,SMITH 是结果集的第一行。EXEC cursor_example;Employee Number:7369 Employee Name:SMITH

概述

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

内置的安全审计规则

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

CREATE PACKAGE

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

DROP PROCEDURE

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

新建存储过程

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

概述

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

DBMS_OBFUSCATION_TOOLKIT

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

DBMS_SESSION

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

ROLLBACK

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

DBMS_LOCK

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

DBMS_PROFILER

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

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

COMMIT

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

创建存储过程

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

限定符

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

用法限制

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

用户定义的异常

以下存储过程(purchase)调用 check_balance 存储过程。如果 p_amount 大于 p_balance,则 check_balance 会引发异常;purchase 会捕获 ar.overdrawn 异常。purchase 必须使用包限定名称(ar.overdrawn)来引用异常,因为 purchase 未在 ar 包...

DBMS_LOCK

DBMS_LOCK内置包支持DBMS_LOCK.SLEEP存储过程。DBMS_LOCK子程序总览 子程序 说明 SLEEP Procedure 暂停当前会话。暂停时长为指定的秒数。SLEEP Procedure 该存储过程用于暂停当前会话指定时长。语法 DBMS_LOCK.SLEEP(seconds IN NUMBER);...

GOTO 语句

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

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

DBMS_SQL包提供了使用动态SQL执行数据操作语言(DML)和数据定义语言(DDL)语句、执行 PL/SQL匿名块以及调用PL/SQL存储过程和函数的接口。DBMS_UTILITY包提供了各种实用子程序。UTL_ENCODE包提供了一组进行数据编解码的函数,方便数据在不同...
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
对象存储 文件存储 CPFS 短信服务 弹性公网IP 人工智能平台 PAI 金融分布式架构
新人特惠 爆款特惠 最新活动 免费试用