达梦数据库学习之存储过程、存储函数、函数

本文详细介绍了达梦数据库中的存储过程、存储函数的语法、使用方法及调用权限,包括参数的使用、函数的分类,如内置函数、C和JAVA外部函数的创建与调用。
摘要由CSDN通过智能技术生成

一、存储过程
       1.概述
       存储过程数据库系统中,一组为了完成特定功能的SQL 语句集,它存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。在数据量特别庞大的情况下利用存储过程能达到倍速的效率提升
       2.语法
       CREATE [OR REPLACE ] PROCEDURE<过程声明><AS_OR_IS><模块体>
       <过程声明> ::= <存储过程名定义> [WITH ENCRYPTION][(<参数名><参数模式><参数类型> [<默认值表达式>] {,<参数名><参数模式><参数类型> [<默认值表达式>] })][<调用权限子句>]
       <存储过程名定义> ::=[<模式名>.]<存储过程名>
       <AS_OR_IS>::= AS | IS
       <模块体> ::= [<声明部分>]
       BEGIN
       <执行部分>
       [<异常处理部分>]
       END
       [存储过程名]
       <声明部分> ::=[DECLARE]<声明定义>{<声明定义>}
       <声明定义>::=<变量声明>|<异常变量声明>|<游标定义>|<子过程定义>|<子函数定义>;
       <执行部分>::=<DMSQL程序语句序列>{;<DMSQL程序语句序列>}
       <DMSQL程序语句序列> ::= [<标号说明>]<DMSQL程序语句>; <标号说明>::=<<<标号名>>>
       <DMSQL程序语句>::=<SQL语句>|<控制语句>
       <异常处理部分>::=EXCEPTION<异常处理语句>{;<异常处理语句>}
       注
       可执行部分是存储过程的核心部分,由SQL语句和流控制语句构成。支持的SQL语句包括:
       数据查询语句(SELECT)
       数据操纵语句(INSERT、DELETE、UPDATE)
       游标定义及操纵语句(DECLARE CURSOR、OPEN、FETCH、CLOSE)
       事务控制语句(COMMIT、ROLLBACK)
       动态SQL执行语句(EXECUTE IMMEDIATE)
       SQL语句必须以分号结尾,否则语法分析报错。

二、存储函数
       1.语法
       CREATE [OR REPLACE ] FUNCTION <函数声明><AS_OR_IS><模块体>
       <函数声明> ::= <存储函数名定义> [WITH ENCRYPTION][FOR CALCULATE][(<参数名><参数模式><参数类型> [<默认值表达式>]{,<参数名><参数模式><参数类型> [<默认值表达式>]})]RETURN
       <返回数据类型> [<调用选项子句>][PIPELINED]
       <存储函数名定义> ::=[<模式名>.]<存储函数名>
       <调用选项子句> ::= <调用选项> {<调用选项>}
       <调用选项> ::= <调用权限子句> | DETERMINISTIC
       <AS_OR_IS>::= AS | IS
       <模块体> ::=

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值