检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
动态语句 执行动态查询语句 执行动态非查询语句 动态调用存储过程 动态调用匿名块 父主题: 存储过程
动态语句 执行动态查询语句 执行动态非查询语句 动态调用存储过程 动态调用匿名块 父主题: 存储过程
子程序 存储在数据库中的存储过程、函数和操作符及高级包等。当在数据库上建立好后,可以在其他程序中调用它们。 父主题: 声明语法
游标概述 为了处理SQL语句,存储过程进程分配一段内存区域来保存上下文联系。游标是指向上下文区域的句柄或指针。借助游标,存储过程可以控制上下文区域的变化。 当游标作为存储过程的返回值时,如果使用JDBC调用该存储过程,返回的游标将不可用。 存储过程内commit/rollback时
开启连接池 前提条件:数据源已配置成功。Linux系统请参考Linux下配置数据源;Windows系统请参考Windows下配置数据源。 在Linux和Windows环境下开启连接池,对于需要频繁建立和断开连接的中间层应用程序可显著提升性能,参考配置请参见连接池场景,示例代码如下:
控制语句 返回语句 条件语句 循环语句 分支语句 空语句 错误捕获语句 GOTO语句 父主题: 存储过程
动态语句 执行动态查询语句 执行动态非查询语句 动态调用存储过程 动态调用匿名块 父主题: 存储过程
游标概述 为了处理SQL语句,存储过程进程分配一段内存区域来保存上下文联系。游标是指向上下文区域的句柄或指针。借助游标,存储过程可以控制上下文区域的变化。 当游标作为存储过程的返回值时,如果使用JDBC调用该存储过程,返回的游标将不可用。 游标的使用分为显式游标和隐式游标。对于不
游标概述 为了处理SQL语句,存储过程进程分配一段内存区域来保存上下文联系。游标是指向上下文区域的句柄或指针。借助游标,存储过程可以控制上下文区域的变化。 当游标作为存储过程的返回值时,如果使用JDBC调用该存储过程,返回的游标将不可用。 游标的使用分为显式游标和隐式游标。对于不
Retry管理 Retry是数据库在SQL或存储过程(包含匿名块)执行失败时,在数据库内部进行重新执行的过程,以提高执行成功率和用户体验。数据库内部通过检查发生错误时的错误码及Retry相关配置,决定是否进行重试。 失败时回滚之前执行的语句,并重新执行存储过程进行Retry。 示例: 1 2 3
游标概述 为了处理SQL语句,存储过程进程分配一段内存区域来保存上下文联系。游标是指向上下文区域的句柄或指针。借助游标,存储过程可以控制上下文区域的变化。 当存储过程使用returns返回游标时,如果使用JDBC调用该存储过程,返回的游标将不可用,使用out出参不受影响。 在分布
动态语句 执行动态查询语句 执行动态非查询语句 动态调用存储过程 动态调用匿名块 父主题: 存储过程
局部的存储过程和函数。 DECLARE 不涉及变量声明时声明部分可以没有。 对匿名块来说,没有变量声明部分时,可以省去DECLARE关键字。 对存储过程来说,没有DECLARE, AS相当于DECLARE。即便没有变量声明的部分,关键字AS也必须保留。 执行部分:过程及SQL语句,程序的主要部分。必选。
显式游标 显式游标主要用于对查询语句的处理,尤其是在查询结果为多条记录的情况下。 处理步骤 显式游标处理需六个PL/SQL步骤: 定义静态游标:就是定义一个游标名,以及与其相对应的SELECT语句。 定义静态游标的语法图,如图1所示。 图1 static_cursor_define::=
高级包现有两套接口,第一套为基础接口,第二套是为了提高易用性做了二次封装的接口,推荐使用第二套接口。 基础接口 二次封装接口(推荐) 父主题: 存储过程
支持在子事务中调用含SAVEPOINT的存储过程并使用外部定义的SAVEPOINT,回退事务状态到存储过程外定义的SAVEPOINT位置。 支持在存储过程外部可见存储过程内部定义的SAVEPOINT,即存储过程外可以将事务修改回滚到存储过程中定义SAVEPOINT的位置。 支持多数
CLOB CHAR - CLOB VARCHAR2 - CLOB NUMBER 原数据必须由数字组成。 INT4 CHAR - 父主题: 存储过程
不能在该循环语句中对查询的表进行更新操作。 变量loop_name会自动定义且只在此循环中有效,类型和select_statement的查询结果类型一致。loop_name的取值就是select_statement的查询结果。 变量loop_name在编译过程中不会解析具体的类型
不能在该循环语句中对查询的表进行更新操作。 变量loop_name会自动定义且只在此循环中有效,类型和select_statement的查询结果类型一致。loop_name的取值就是select_statement的查询结果。 变量loop_name在编译过程中不会解析具体的类型
unique_violation USING MESSAGE = 'Duplicate user ID: ' || user_id; 父主题: 存储过程