栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 其他

DM8达梦数据库存储过程函数使用

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

DM8达梦数据库存储过程函数使用

       DM8数据库的过程函数的编写主要分为4个部分:过程头部分,声明定义部分,执行部分和异常处理部分。在编写方面,过程和函数的主要区别还是函数可以返回一个值,但是过程没有。下面就从这4个部分来分别介绍过程的编写和一些常用的技巧(循环,条件,过程函数调用,游标等。)

        在DM8的过程变异方面,数据库提供了2种基本的编译工具,可视窗口化的DM管理工具和命令行式的dmdbg工具。由于DM管理工具在编译时更简单方便,所以下面都用DM管理工具来演示编译的过程。

目录

1.建立最基本的存储过程

2.过程中声明的定义类型

3.条件语句 

4.循环语句

5.游标

6.异常处理


1.建立最基本的存储过程

可以选择新建存储过程。

 也可以直接在SQL窗口中创建语句。

 这样一个最基本的过程就写完了。

2.过程中声明的定义类型

在过程声明时可以定义变量的类型与表字段的类型一致。这样在表字段类型发生变化时,过程不会因为变量不匹配的问题而报错。

先建一个表

 把表的字段类型定义成变量的类型

在声明的%ROWTYPE一般用于游标中。

3.条件语句 

DM程序里面的条件语句主要有if-then条件语句,case-when条件语句和switch-case-break条件语句。这里介绍if-then条件语句。if-then语句在程序块中出现的频率非常高,其结构主要由if-then-(elseif-then)-(else)-end if组成。下面的过程就是做了一个简单的判断

4.循环语句

DM程序里的循环主要有loop循环,for循环,while循环。这里介绍下本人用的最多的for循环。在sql程序中,循环可以做到很多批量重复性的工作,大大减少了人们的工作量。这里写一个批量往单表中插入数据的循环sql。

 跑完过程可以查看表中数据是否插入

 

5.游标

DM数据库的游标分为动态游标和静态游标。静态游标又分为显示游标和隐式游标。

静态显示游标:需要在声明处定义游标,游标的结果集一旦声明就不发生变化。

静态隐式游标:游标不需要声明,在数据库的DML操作之后都会隐式的生成一个游标。

动态游标:在声明处只需要定义游标名称,游标结果集可以在过程的执行部分进行规定。

此处演示一下静态显示游标的用法。

        此处选择昨日的日期跑此过程,查看表中的数据

 

6.异常处理

       异常处理作为数据库程序中非常重要的一环,在程序报错或者异常退出时,能让工作人员及时的定位问题的根本原因。所以,写好异常处理部分可以减少很多维护上的时间和成本。

       异常处理分为预定义的异常处理和自定义的异常处理。下面演示一下预定义的异常处理和自定义的异常处理。

       首先先建一个日志表,用来存放每次程序执行的日志。

       然后写一个完整的异常处理功能来测试一下。

 测试找一天不在昨天和今天的日期,程序就会走到抛出自定义异常的地方,随后产看日志表就可以看到程序报错的大致信息。

再在程序中加一个除数为0的错误,测试一下预定义的异常,结果如下表: 

更多资讯请上达梦技术社区了解:https://eco.dameng.com

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/279696.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号