调用子程序

通过指定子程序的名称和任何实参,调用子程序,这与调用独立存储过程或函数的方式相同。可以使用一个或多个限定符来调用子程序,也可以不使用限定符来调用子程序,这些限定符是父级子程序的名称或带标记的匿名块,这些块构成了从中声明子...

创建子存储过程

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

DBMS_OUTPUT

表 1.DBMS_OUTPUT函数/存储过程 函数/存储过程 返回类型 描述 DISABLE N/A 禁止访问缓冲区的消息。ENABLE(buffer size)N/A 允许访问缓冲区的消息。GET_LINE(line OUT,status OUT)N/A 从缓冲区中检索一行文本。GET_LINES(lines OUT,numlines...

概述

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

用户定义的 PL/SQL 子类型

PolarDB PostgreSQL版(兼容Oracle)支持用户定义的PL/SQL子类型和(子类型)别名。子类型是具有一组可选约束的数据类型,这些约束限制可以存储在该类型的列中的值。适用于该子类型所基于的类型的规则仍然适用,但您可以使用其他约束限制该...

概述

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

ALL_SOURCE

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

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 发布消息到队列...

在包中使用用户自定义类型

包定义emp_rpt显示了记录类型 emprec_type以及弱类型REF CURSOR emp_refcur的声明,这两个类型与包中两个函数和两个存储过程一样,可以以公有方式访问。函数open_emp_by_dept返回REF CURSOR 类型 EMP_REFCUR存储过程,fetch_emp和close_...

CREATE SYNONYM

PolarDB PostgreSQL版(兼容Oracle)支持以下对象的同义词:表 视图 具体化视图 序列 存储过程 存储函数 类型 可通过database link访问的对象 其他同义词 参数 参数 说明 syn_name syn_name是同义词的名称。同义词名称在schema中必须是唯一...

账号权限列表

CREATE PROCEDURE 为用户创建任意存储过程的权限。CREATE SYNONYM 为用户创建同义词的权限。CREATE SEQUENCE 为用户创建序列的权限。CREATE TRIGGER 为用户创建触发器的权限。CREATE TYPE 创建类型的权限。CREATE SESSION 创建会话的权限。...

CREATE FUNCTION.AGGREGATE USING type_name

参数说明 ODCIAggregateInitialize STATIC FUNCTION ODCIAggregateInitialize(actx IN OUT)RETURN NUMBER 参数 In/Out 说明 actx IN OUT 由例程初始化的聚合上下文。该值适用NULL与常规聚合情况。在窗口聚合中,actx是前一个窗口的上下文。...

PolarDB PostgreSQL版:ePQ架构详解

PolarDB PostgreSQL版(兼容Oracle)实现了弹性跨机并行查询(ePQ)特性,能够帮助您解决原先的 PolarDB PostgreSQL版(兼容Oracle)在处理复杂的AP查询时会遇到的问题。前提条件 支持的 PolarDB PostgreSQL版(兼容Oracle)的版本如下:...

创建对象类型

以下对象类型规格创建emp_obj_typ对象类型:CREATE OR REPLACE TYPE emp_obj_typ AS OBJECT(empno NUMBER(4),ename VARCHAR2(20),addr ADDR_OBJ_TYP,MEMBER PROCEDURE display_emp(SELF IN OUT emp_obj_typ));对象类型emp_obj_typ包含一个...

DBMS_CRYPTO

函数 DECRYPT 的语法如下:DECRYPT(src IN RAW,typ IN INTEGER,key IN RAW,iv IN RAW DEFAULT NULL)RETURN RAW 存储过程 DECRYPT 的语法如下:DECRYPT(dst INOUT BLOB,src IN BLOB,typ IN INTEGER,key IN RAW,iv IN RAW DEFAULT NULL)或 ...

创建包规格

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

pg_language

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

DBMS_UTILITY

NAME_TOKENIZE(name,a OUT,b OUT,c OUT,dblink OUT,nextpos OUT)存储过程 N/A 将给定名称解析为其组成部分。TABLE_TO_COMMA(tab,tablen OUT,list OUT)存储过程 N/A 将名称表转换为逗号分隔的列表。与Oracle版本相比,PolarDB PostgreSQL版...

不支持AGGREGATE关键字

Oracle中支持使用AGGREGATE创建一个自定义聚合函数,比如创建一个查询第二大值的聚合函数:创建object type CREATE or REPLACE type secmax_context AS object(firmax NUMBER,secmax NUMBER,static FUNCTION ODCIAggregateInitialize(sctx ...

函数对象

MySQL 模式下不支持设定参数模式,Oracle 模式下支持三种参数模式 IN(输入)、OUT(输出)、INOUT(输入输出):IN:输入参数,调用函数时将参数的值传入函数供执行函数时使用。OUT:输出参数,调用函数时,函数会忽略输出参数本身的值并传入一个...

关闭游标变量

与静态游标不同,游标变量不必在再次重新打开之前关闭。之前打开的结果集将丢失。通过添加CLOSE语句完善该示例。...以下是执行此存储过程时的输出。EXEC emp_by_dept(20)EMPNO ENAME-7369 SMITH 7566 JONES 7788 SCOTT 7876 ADAMS 7902 FORD

关闭游标

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

在变量声明中使用%TYPE

您也可以将上述存储过程改写为以下模式,无需将 emp 表数据类型显式编码到存储过程的声明部分中。CREATE OR REPLACE PROCEDURE emp_sal_query(p_empno IN emp.empno%TYPE)IS v_ename emp.ename%TYPE;v_job emp.job%TYPE;v_hiredate emp....

DBMS_SESSION

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

PRAGMA EXCEPTION_INIT

以下存储过程(purchase)调用check_balance存储过程。如果p_amount大于p_balance,则check_balance会引发异常;purchase会捕获ar.overdrawn异常。CREATE PROCEDURE purchase(customerID int,amount NUMERIC)AS BEGIN ar.check_balance...

数据集成服务

数据导入的迁移方案包括同步MySQL数据到表格存储、同步Oracle数据到表格存储、同步Kafka数据到表格存储、同步HBase数据到表格存储、同步MaxCompute数据到表格存储、同步表格存储数据表中数据到另一个数据表和同步表格存储时序表中数据到另...

EXECUTE 特权

SPL 程序(函数、存储过程或包)仅在满足以下任何条件时才开始执行:已向当前用户授予对 SPL 程序的 EXECUTE 特权。由于是对 SPL 程序具有 EXECUTE 特权的组的成员,当前用户继承此类特权。已向 PUBLIC 组授予 EXECUTE 特权。在 PolarDB ...

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 当前会话...

dblink_ora 函数和存储过程

dblink_ora 支持以下函数和存储过程。dblink_ora_connect()dblink_ora_connect()函数使用用户指定的连接信息与 Oracle 数据库建立连接。该函数采用两种形式;第一种形式的特征如下:dblink_ora_connect(conn_name,server_name,service_name...

COMMIT

COMMIT 命令可在匿名块、存储过程或函数中使用。在 SPL 程序内,它可出现在可执行部分和/或异常部分中。在以下示例中,匿名块中的第三个 INSERT 命令导致错误。前两个 INSERT 命令的效果将保留,如第一个 SELECT 命令的输出所示。即使在...

基本对象概念

重载方法 在对象类型中,允许定义两个或多个具有相同类型(这是存储过程或函数)但具有不同特征的同名方法。此类方法称为重载方法。方法的特征由形参的数量、数据类型及其顺序组成。icmsDocProps={'productMethod':'created','language':'...

用户定义的异常

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

示例数据库安装

在安装 PolarDB PostgreSQL版(兼容Oracle)...对于用户有权在其中创建表和存储过程的搜索路径,将在该搜索路径的第一个schema中创建表和程序。您可以通过发出以下命令来显示搜索路径:SHOW SEARCH_PATH;可以在 PSQL 中使用命令更改搜索路径。

PRAGMA AUTONOMOUS_TRANSACTION

包中声明为子程序的存储过程和函数以及其他调用存储过程、函数和匿名块。触发器。对象类型方法。下面是与自治事务有关的问题和限制:每个自治事务只要在进行中,就会消耗一个连接槽。在某些情况下,这可能意味着应增大postgresql.conf文件...

使用 RETURNING INTO 子句

以下是此存储过程的输出(假定 emp_insert 存储过程创建的员工 9503 仍存在于表中)。EXEC emp_comp_update(9503,6540,1200);Updated Employee#:9503 Name:PETERSON Job:ANALYST Department:40 New Salary:6540.00 New Commission:1200.00 ...

DBMS_REDACT

DBMS_REDACT包提供了创建策略、更改策略、启用策略、禁用策略和删除策略的存储过程,您可以使用这些存储过程实现自定义的数据混淆。下表列出了DBMS_REDACT包中可以使用的存储过程存储过程 返回类型 描述 ADD_POLICY(object_schema,object...

DBMS_APPLICATION_INFO

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

简介

概述 阿里云自研Ganos时空引擎(以下简称Ganos)提供一系列的数据类型、函数和存储过程,用于在云原生关系型分布式数据库PolarDB中对空间/时空数据进行高效的存储、索引、查询和分析计算。本文档向您介绍在PolarDB中如何使用Ganos对时空...

DBMS_RLS

check IN BOOLEAN DEFAULT FALSE,enable IN BOOLEAN DEFAULT TRUE,static_policy IN BOOLEAN DEFAULT FALSE,policy_type IN BINARY_INTEGER DEFAULT NULL,long_predicate IN BOOLEAN DEFAULT FALSE,sec_relevant_cols IN VARCHAR2 DEFAULT ...

异常处理

默认情况下,SPL 程序中发生的任何错误都会中止该程序的执行。通过使用带有 EXCEPTION 部分的 BEGIN 块,您可以捕获错误并从中...此外,对于 Oracle 数据库,INVALID_NUMBER 异常只适用于 SQL 语句,而VALUE_ERROR 异常只适用于存储过程语句。
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
对象存储 云存储网关 文件存储 CPFS 弹性公网IP 短信服务 人工智能平台 PAI
新人特惠 爆款特惠 最新活动 免费试用