限定符

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

概述

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

DBMS_SESSION

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

ALL_SOURCE

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

参数模式

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

用户定义的异常

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

SECURITY LABEL

表、聚集、域、外部表、函数、存储过程、例程、序列、类型和视图的名称可以是模式限定的。provider 这个标签相关联的提供者的名称。所提到的提供者必须已被载入并且必须赞同所提出的标签操作。如果正好只载入了一个提供者,可以出于简洁的...

新建函数

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

DBMS_RANDOM

INITIALIZE Procedure 该存储过程 使用指定的种子初始化DBMS_RANDOM包。语法 DBMS_RANDOM.INITIALIZE(val IN INTEGER);参数说明 参数 说明 val 用于生成随机数的指定种子值。示例 该示例展示了如何用指定的数字初始化DBMS_RANDOM的种子值。...

CREATE TYPE BODY

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

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

创建包规格

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

pg_language

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

GRANT on Database Objects

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

INSERT

以下是使用从调用程序传递的数据插入新员工的存储过程的示例。CREATE OR REPLACE PROCEDURE emp_insert(p_empno IN emp.empno%TYPE,p_ename IN emp.ename%TYPE,p_job IN emp.job%TYPE,p_mgr IN emp.mgr%TYPE,p_hiredate IN emp.hiredate%...

赋值

以下示例显示存储过程的可执行部分中的赋值语句的典型使用。CREATE OR REPLACE PROCEDURE dept_salary_rpt(p_deptno NUMBER)IS todays_date DATE;rpt_title VARCHAR2(60);base_sal INTEGER;base_comm_rate NUMBER;base_annual NUMBER;BEGIN...

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...

DBMS_APPLICATION_INFO

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

COMMIT

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

使用前置声明

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

UPDATE

以下显示使用此存储过程更新员工。EXEC emp_comp_update(9503,6540,1200);Updated Employee#:9503 New Salary:6540 New Commission:1200 SELECT*FROM emp WHERE empno=9503;empno|ename|job|mgr|hiredate|sal|comm|deptno-+-+-+-+-+-+-+-...

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

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

CREATE LANGUAGE

接着,可以用这种新语言定义函数和存储过程。CREATE LANGUAGE 实际上把该语言名称与负责执行用该语言编写的函数的处理器函数关联在一起。CREATE OR REPLACE LANGUAGE 将创建或者替换一种现有的定义。如果该语言已经存在,其参数会被根据...

删除存储过程

通过使用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...

REF CURSOR 概述

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

DECLARE

INSENSITIVE 指示从游标中检索数据的过程不受游标创建之后在其底层表上发生的更新的影响。在PolarDB中,这是默认的行为。因此这个关键词没有实际效果,仅仅被用于兼容 SQL 标准。SCROLL NO SCROLL SCROLL 指定游标可以用非顺序(例如,反向...

创建子存储过程

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

同步更新Oracle数据库(oracle_fdw)

RDS PostgreSQL提供oracle_fdw插件,可以连接到Oracle数据库,通过操作PostgreSQL表同步更新Oracle数据库中的表。前提条件 实例为RDS PostgreSQL 12(内核版本20200421及以上)。说明 您可以执行 SHOW rds_supported_extensions;查看是否...

Oracle Golden Gate

Oracle Golden Gate(OGG)可用于将Oracle中的数据同步到 AnalyticDB MySQL 中。Oracle Golden Gate数据类型与AnalyticDB MySQL兼容性 源端 目标端 同步行为 Oracle MySQL AnalyticDB MySQL INSERT UPDATA DELETE number(3)bool或tinyint(1...

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_...

概述

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

CREATE PACKAGE

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

概述

场景一:PolarDB PostgreSQL版(兼容Oracle)到ECS自建PostgreSQL的DBLink 客户原来使用的是ECS自建PostgreSQL数据库,在迁移至 PolarDB PostgreSQL版(兼容Oracle)的过程中,由于部分原因,先迁移了一部分业务系统上 PolarDB PostgreSQL...

OGG for Big Data

下面将介绍Oracle/OGG相关安装和配置过程Oracle的安装将不做介绍,另外需要注意的是:Oracle/OGG相关参数配置以熟悉Oracle/OGG的运维人员配置为准,本示例只是提供一个可运行的样本。OGG 源端配置 本文以Oracle11g为例,给出一个可用示例...

块关系

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

ROLLBACK

ROLLBACK 命令撤消当前事务期间执行的所有数据库更新,并结束当前事务。ROLLBACK[WORK];ROLLBACK 命令可在匿名块、存储...说明 如果运行时堆栈上存在 Oracle 样式的 SPL 过程,则在 PLPGSQL 存储过程中执行 COMMIT 或 ROLLBACK 将会引发错误。

术语

本文介绍 PolarDB PostgreSQL版(兼容Oracle)使用过程中遇到的术语。名词 描述 地域(Region)数据中心所在的地理位置。可用区(Zone)可用区是指在某一地域内,具有独立电力和网络的物理区域。同一可用区内实例之间的网络延时更小。集群...

CREATE PROCEDURE

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

DBMS_RLS

表 1.DBMS RLS 函数/存储过程 函数/存储过程 类型 返回类型 说明 ADD POLICY(object schema,object name,policy name,function schema,policy function[,statement types[,update check[,enable[,static policy[,policy type[,long ...
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
云存储网关 对象存储 文件存储 CPFS 弹性公网IP 短信服务 人工智能平台 PAI
新人特惠 爆款特惠 最新活动 免费试用