达梦数据库开发规范及存储过程与函数

达梦数据库开发规范
DMSQL语句有三个特点:1.是服务器端存储过程语言(可避免数据一下子传到数据库中造成拥挤),因此可以对数据进行高效处理;2.具有很好的可重用性;3.降低网络拥挤
DMSQL程序由声明部分、执行部分、异常处理部分三大块组成,其中执行部分是不可或缺的,DMSQL程序可自定义异常,异常处理块主要用来排查问题起到辅助作用;DMSQL分为三类:匿名块、子程序(存储过程、函数以及包等)、触发器,匿名块、子程序这些都只执行一次,可重复调用;
DMSQL中标识符定义的要求同SQL相同,DMSQL中变量命名尽量规范统一,声明变量时注意是否使用到了(NOT NULL、CONSTANT选项,涉及到是否需要指定出初值,以及初值是否能改变)。
DMSQL中的复合类型:记录类型(把逻辑相关的数据作为一个单元存储起来)、%TYPE(其数据类型与已定义的某个数据变量类型相同或者与数据库表中的某个列的数据类型相同)

存储过程与函数
存储过程和函数统称为DMSQL的子程序,均存储在数据库中,并通过输入、输出参数与其调用者交换信息,两者唯一的区别是函数会向调用者返回数据而过程不会。
DM数据库上建立存储过程可以多个应用程序调用,可以像存储过程传递参数,也可以从存储过程传回参数(存储过程就如同有名字的匿名块)
存储过程的执行有两种方式:一种是 CALL句式,一种是BEGIN……END句式;
存储过程有几个注意的点:1.CALL句式无法执行含传出参数的过程,需要通过匿名块来实现;2.存储过程所依赖的表被删除后,再重建的话需要进行重新编译;3.删除存储过程前尽量备份(1.可DM管理工具进行可视化操作备份2.使用SELECT dbms_metadata.get_ddl(‘PROCEDURE’,’过程名’,’依赖表’))这两种方法同样适用于函数的备份第二种只需将PROCEDURE改为FUNCTION。
函数的创建语法和存储过程类似,主要多了返回值这一项;
函数的调用方法:1.位置表示法(均为实参)2.名称表示法(形参=>实参)3.混合表示法(使用位置表示法传递的参数必须在名称表示法前面,无论有多少个参数,只要有一个用了名称表示法,其后都要用名称表示法)
在这里插入图片描述
位置表示法和名称表示法
在这里插入图片描述
混合表示法

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值