RETURN 语句

RETURN 语句终止当前函数、存储过程或匿名块并将控制权交还给调用者。有两种形式的 RETURN 语句。第一种形式的 RETURN 语句用于终止返回 void 的存储过程或函数。语法为:RETURN;第二种形式的 RETURN 将值返回给调用者。语法为:RETURN ...

DBMS_OUTPUT

ENABLE Procedure 该存储过程用于允许PUT、PUT_LINE、NEW_LINE和GET_LINE存储过程的调用。语法 DBMS_OUTPUT.ENABLE(buffer_size IN INTEGER DEFAULT 20000);参数说明 参数 说明 buffer_size(可选参数)消息缓冲区的最大长度。以字节为单位...

块关系

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

DBMS_ALERT

SIGNAL Procedure 该存储过程用于产生一条指定名称的告警 语法 DBMS_ALERT.SIGNAL(event IN VARCHAR2,message IN VARCHAR2);参数说明 参数 说明 event 发送消息的告警的名称。message 告警的具体消息。示例 该示例展示了如何发送一个告警...

限定符

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

声明变量

例如,将 SYSDATE 分配给 DATE 类型的变量会使该变量具有当前调用的时间,而不是预编译存储过程或函数时的时间。以下存储过程说明一些变量声明,它们使用包括字符串和数值表达式的默认值。CREATE OR REPLACE PROCEDURE dept_salary_rpt(p_...

概述

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

概述

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

ALL_SOURCE

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

DBMS_SESSION

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

SECURITY LABEL

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

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仍然使用这...

赋值

以下示例显示存储过程的可执行部分中的赋值语句的典型使用。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...

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

关闭游标变量

与静态游标不同,游标变量不必在再次重新打开之前关闭。之前打开的结果集将丢失。通过添加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

将%ROWTYPE 与游标结合使用

以下是此存储过程的输出。EXEC emp_info;SMITH works in department 20 ALLEN works in department 30 WARD works in department 30 JONES works in department 20 MARTIN works in department 30 BLAKE works in department 30 CLARK ...

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);参数 参数 说明 ...

使用前置声明

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

创建子函数

块是独立存储过程和函数、匿名块、子程序、触发器、包和对象类型方法的结构。短语 标识符是块本地的 意味着标识符(即,变量、游标、类型或子程序)在该块的声明部分中声明,因此可由 SPL 代码在该块的可执行部分和可选异常部分中进行访问...

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

包规格

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

CREATE LANGUAGE

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

oracle_fdw

是 说明 如果您不想在 PolarDB PostgreSQL版(兼容Oracle)中存储Oracle用户的凭证,可以设置 user 为空字符串,并提供外部授权。创建外部表映射。在 PolarDB PostgreSQL版(兼容Oracle)中创建一个外部表,映射到Oracle数据库的一个已有的...

dblink_ora 函数和存储过程

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

同步更新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...

内置的安全审计规则

存储过程滥用 执行危险的操作,存储过程XP_REGDELETEKEY(SQLServer语法)高 存储过程滥用 执行危险的操作,存储过程XP_REGDELETEVALUE(SQLServer语法)高 存储过程滥用 执行危险的操作,存储过程XP_REGENUMVALUES(SQLServer语法...

ROLLBACK

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

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_CRYPTO

注意事项 DBMS_CRYPTO 函数/存储过程支持下列与Oracle兼容的错误消息:ORA-28239-DBMS_CRYPTO.KeyNull ORA-28829-DBMS_CRYPTO.CipherSuiteNull ORA-28827-DBMS_CRYPTO.CipherSuiteInvalid 与Oracle不同,如果您对之前加密的信息再加密,...

存储过程

Oracle等传统数仓的业务迁移至 AnalyticDB PostgreSQL版 时,可以直接使用存储过程功能,不需要改造业务SQL。存储过程的特性 AnalyticDB PostgreSQL 7.0版 的内核版本升级至PostgreSQL 12,可以较好地支持存储过程能力。通过合理地使用存储...

新建存储过程

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

新建函数

说明 Oracle 模式下函数和存储过程均包含 IN/OUT/INOUT 参数;MySQL 模式下只包含 IN 参数,而存储过程包含 IN/OUT/INOUT 参数。步骤 4:确认创建函数 单击 确定,进入 SQL 创建确认页面。步骤 5:编辑函数语句 在 SQL 创建确认页面,编辑...
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
对象存储 文件存储NAS 云原生数据仓库 AnalyticDB PostgreSQL版 弹性公网IP 短信服务 人工智能平台 PAI
新人特惠 爆款特惠 最新活动 免费试用