检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
GaussDB(DWS)存储过程数据类型转换 数据库中允许有些数据类型进行隐式类型转换(赋值、函数调用的参数等),有些数据类型间不允许进行隐式数据类型转换,可尝试使用GaussDB(DWS)提供的类型转换函数,例如CAST进行数据类型强转。 GaussDB(DWS)数据库常见的隐式类型转换,请参见表1。
END; / CALL proc_case_branch(3,0); --删除存储过程 DROP PROCEDURE proc_case_branch; 父主题: GaussDB(DWS)存储过程控制语句
END; / CALL proc_case_branch(3,0); --删除存储过程 DROP PROCEDURE proc_case_branch; 父主题: GaussDB(DWS)存储过程控制语句
GaussDB(DWS)存储过程 GaussDB(DWS)存储过程简介 GaussDB(DWS)存储过程数据类型转换 GaussDB(DWS)存储过程数组和record GaussDB(DWS)存储过程声明语法 GaussDB(DWS)存储过程基本语句 GaussDB(DWS)存储过程动态语句
当需要函数返回一个集合时,使用RETURN NEXT或者RETURN QUERY向结果集追加结果,然后继续执行函数的下一条语句。随着后续的RETURN NEXT或RETURN QUERY命令的执行,结果集中会有多个结果。函数执行完成后会一起返回所有结果。 RETURN NEXT可用于标量和复合数据类型。 RETURN
outside of limit. 在存储过程中定义的数组类型,其作用域仅在该存储过程中。 建议选择上述定义方法的一种来自定义数组类型,当同时使用两种方法定义同名的数组类型时,GaussDB(DWS)会优先选择存储过程中定义的数组类型来声明数组变量。 GaussDB(DWS) 8.1
GaussDB(DWS)存储过程 GaussDB(DWS)存储过程简介 GaussDB(DWS)存储过程数据类型转换 GaussDB(DWS)存储过程数组和record GaussDB(DWS)存储过程声明语法 GaussDB(DWS)存储过程基本语句 GaussDB(DWS)存储过程动态语句
| Jones (1 row) DROP FUNCTION fun_exp(); DROP TABLE mytab; 当控制到达给y赋值的地方时,会有一个division_by_zero错误失败。这个错误将被EXCEPTION子句捕获。而在RETURN语句里返回的数值将是x的增量值。
GaussDB(DWS)存储过程动态语句 执行动态查询语句 执行动态非查询语句 动态调用存储过程 动态调用匿名块 父主题: GaussDB(DWS)存储过程
GaussDB(DWS)存储过程动态语句 执行动态查询语句 执行动态非查询语句 动态调用存储过程 动态调用匿名块 父主题: GaussDB(DWS)存储过程
FOR_AS_loop::= 注意事项 不能在该循环语句中对查询的表进行更新操作。 变量loop_name会自动定义且只在此循环中有效,类型和select_statement的查询结果类型一致。loop_name的取值就是select_statement的查询结果。 游标的属性中%FOUND、%NOT
条件语句的主要作用是判断参数或者语句是否满足已给定的条件,根据判定结果执行相应的操作。 GaussDB(DWS)有五种形式的IF: IF_THEN 图1 IF_THEN::= IF_THEN语句是IF的最简单形式。如果条件为真,statements将被执行。否则,将忽略它们的结果使该IF_THEN语句执行结束。 示例
GaussDB(DWS)存储过程简介 什么是GaussDB(DWS)存储过程 商业规则和业务逻辑可以通过程序存储在GaussDB(DWS)中,这个程序就是存储过程。 存储过程是SQL,PL/SQL,Java语句的组合。存储过程使执行商业规则的代码可以从应用程序中移动到数据库。从而,代码存储一次能够被多个程序使用。
GaussDB(DWS)存储过程游标 游标概述 显式游标 隐式游标 游标循环 父主题: GaussDB(DWS)存储过程
GaussDB(DWS)存储过程游标 游标概述 显式游标 隐式游标 游标循环 父主题: GaussDB(DWS)存储过程
类型,函数或存储过程可以通过sys_refcursor参数传入或传出游标结果集合,函数也可以通过返回sys_refcursor来返回游标结果集合。 图3 dynamic_cursor_define::= 打开静态游标:就是执行游标所对应的SELECT语句,将其查询结果放入工作区,
使用情况不同,详细信息请参见表1。 表1 游标使用情况 SQL语句 游标 非查询语句 隐式的 结果是单行的查询语句 隐式的或显式的 结果是多行的查询语句 显式的 父主题: GaussDB(DWS)存储过程游标
存放着SQL语句的执行结果。每个游标区都有一个名字。用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理。 游标的操作主要有游标的定义、打开、获取和关闭。 完整的游标操作示例可参考显式游标。 父主题: GaussDB(DWS)存储过程
GaussDB(DWS)存储过程调试 语法 RAISE有以下五种语法格式: 图1 raise_format::= 图2 raise_condition::= 图3 raise_sqlstate::= 图4 raise_option::= 图5 raise::= 参数说明: lev
column_value定义参数列。 当结果集大于work_mem设定值时会触发结果集临时下盘,但最大阈值不超过512MB。 DBMS_SQL.OPEN_CURSOR 该函数用来打开一个游标,是后续dbms_sql各项操作的前提。该函数不传入任何参数,内部自动递增生成游标ID,并作为返回值返回给integer定义的变量。