检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
动态语句 执行动态查询语句 执行动态非查询语句 动态调用存储过程 动态调用匿名块 父主题: 存储过程
高级包 DBMS_LOB DBMS_RANDOM DBMS_OUTPUT UTL_RAW DBMS_JOB DBMS_SQL 父主题: 存储过程
ssDB(DWS)根据数据类型有相应函数对其内容进行操作,例如GaussDB(DWS)可对数值型数据进行加、减、乘、除操作。 父主题: 存储过程
调用一个语句的语法请参见图1。 图1 call_clause::= 对以上语法格式的解释如下: procedure_name,为存储过程名。 parameter,为存储过程的参数,可以没有或者有多个参数。 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14
控制语句 返回语句 条件语句 循环语句 分支语句 空语句 错误捕获语句 GOTO语句 父主题: 存储过程
下: 声明部分:声明PL/SQL用到的变量,类型及游标,以及局部的存储过程和函数。 DECLARE 不涉及变量声明时声明部分可以没有。 对匿名块来说,没有变量声明部分时,可以省去DECLARE关键字。 对存储过程来说,没有DECLARE, AS相当于DECLARE。即便没有变量声明的部分,关键字AS也必须保留。
其他语句 锁操作 游标操作 父主题: 存储过程
声明语法 基本结构 匿名块 子程序 父主题: 存储过程
基本语句 定义变量 赋值语句 调用语句 父主题: 存储过程
cript outside of limit. 在存储过程中定义的数组类型,其作用域仅在该存储过程中。 建议选择上述定义方法的一种来自定义数组类型,当同时使用两种方法定义同名的数组类型时,GaussDB(DWS)会优先选择存储过程中定义的数组类型来声明数组变量。 GaussDB(DWS)
datatype:record类型中成员的类型。 expression:设置默认值的表达式。 在GaussDB(DWS)中: record类型的变量的赋值支持, 在函数或存储过程的声明阶段,声明一个record类型,并且可以在该类型中定义成员变量。 一个record变量到另一个record变量的赋值。 SELECT
--调用函数 CALL proc_forall(); --查询存储过程调用结果 SELECT * FROM hdfs_t1 WHERE title BETWEEN 100 AND 120; --删除存储过程和表 DROP PROCEDURE proc_forall; DROP
ETURN或RETURN NEXT及RETURN QUERY。其中,RETURN NEXT和RETURN QUERY只适用于函数,不适用存储过程。 RETURN RETURN NEXT及RETURN QUERY 父主题: 控制语句
parentid = '' THEN RETURN; ELSE hp_true_filename(parentid);--表示调用存储过程 END IF; IF_THEN_ELSE IF IF语句可以嵌套,嵌套方式如下: 1 2 3 4 5 6 7 IF sex = 'm'
'pi_return : %',pi_return ; END; / CALL proc_case_branch(3,0); --删除存储过程 DROP PROCEDURE proc_case_branch; 父主题: 控制语句
定义动态游标的语法图,请参见图2和图3。 图2 cursor_typename::= GaussDB(DWS)支持sys_refcursor动态游标类型,函数或存储过程可以通过sys_refcursor参数传入或传出游标结果集合,函数也可以通过返回sys_refcursor来返回游标结果集合。 图3 d
游标操作 GaussDB(DWS)中游标(cursor)是系统为用户开设的一个数据缓冲区,存放着SQL语句的执行结果。每个游标区都有一个名字。用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理。 游标的操作主要有游标的定义、打开、获取和关闭。 完整的游标操作示例可参考显式游标。
1011的表现形式为‘CB’,即在实际的类型转换中输入的是‘CB’。 UTL_RAW.CAST_FROM_BINARY_INTEGER 存储过程CAST_FROM_BINARY_INTEGER将INTEGER类型值转换为二进制表示形式(即RAW类型)。 UTL_RAW.CAST_
游标循环 游标在WHILE语句、LOOP语句中的使用称为游标循环,一般这种循环都需要使用OPEN、FETCH和CLOSE语句。下面要介绍的一种循环不需要这些操作,可以简化游标循环的操作,这种循环方式适用于静态游标的循环,不用执行静态游标的四个步骤。 语法 FOR AS循环的语法请参见图1。
称与字段类型都与employee表相同。可以通过如下定义: my_employee employee%ROWTYPE 多个CN的环境下,存储过程中无法声明临时表的%ROWTYPE及%TYPE属性。因为临时表仅在当前session有效,在编译阶段其他CN无法看到当前CN的临时表。故