• 达梦数据库存储过程


    达梦数据库简单存储过程



    一、存储过程概述

    存储过程数据库系统中,一组为了完成特定功能的SQL 语句集,它存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。在数据量特别庞大的情况下利用存储过程能达到倍速的效率提升

    语法

    CREATE [OR REPLACE ] PROCEDURE<过程声明><模块体>
    <过程声明> ::= <存储过程名定义> [WITH ENCRYPTION][(<参数名><参数模式><参数类型> [<默认值表达式>] {,<参数名><参数模式><参数类型> [<默认值表达式>] })][<调用权限子句>]
    <存储过程名定义> ::=[<模式名>.]<存储过程名>
    ::= AS | IS
    <模块体> ::= [<声明部分>]
    BEGIN
    <执行部分>
    [<异常处理部分>]
    END
    [存储过程名]
    <声明部分> ::=[DECLARE]<声明定义>{<声明定义>}
    <声明定义>::=<变量声明>|<异常变量声明>|<游标定义>|<子过程定义>|<子函数定义>;
    <执行部分>::={;}
    ::= [<标号说明>]; <标号说明>::=<<<标号名>>>
    ::=|<控制语句>
    <异常处理部分>::=EXCEPTION<异常处理语句>{;<异常处理语句>}

    可执行部分是存储过程的核心部分,由SQL语句和流控制语句构成。支持的SQL语句包括:
    数据查询语句(SELECT)
    数据操纵语句(INSERTDELETEUPDATE)
    游标定义及操纵语句(DECLARE CURSOROPENFETCHCLOSE)
    事务控制语句(COMMITROLLBACK)
    动态SQL执行语句(EXECUTE IMMEDIATE)
    SQL语句必须以分号结尾,否则语法分析报错。


    二、达梦数据库简单存储过程编写

    首先我们先在一个模式名下创建存储过程,最好不要在SYSDBA模式下创建
    在这里插入图片描述
    编写存储过程
    在这里插入图片描述
    使用DM8初始化创建的数据库实例里面的JOB表
    在这里插入图片描述
    然后我们编辑存储过程,设置变量,将sql进行修改,给变量赋值,并将条件设置为输入变量,并最终进行出参打印出来
    as后为我们设置的出参变量,变量名+变量数据类型,用分号隔开
    查询的指定列名into出参,按查询顺序依次赋值
    条件为入参A
    最终打印B1B2B3,并用||分割显示
    在这里插入图片描述

    
    AS
    	B1 VARCHAR;B2 INT;B3 INT ; 
    BEGIN
    	/*执行体*/
    	SELECT 
    	JOB_ID,
    	MIN_SALARY,
    	MAX_SALARY INTO B1,B2,B3 
    	FROM DMHR.JOB 
    	WHERE JOB_TITLE=A;
    	print('ID='||B1||'    最低工资:'||B2||'     最高工资:'||B3);
    END;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    点击确定保存结束后,我们在查询语句中,调用存储过程,查看是否正确显示
    这里因为我们设置的入参变量为varchar类型,如果设置的为int型,则不需要用引号,但是入参必须和相应的列名数据类型相同,否则会出错

    调用存储过程

    CALL DMHR.T1('总经理助理')
    
    • 1

    在这里插入图片描述

  • 相关阅读:
    LCR 051. 二叉树中的最大路径和
    【算法题】1718. 构建字典序最大的可行序列
    rxjs pipeable operators(下)
    预计2023年交付35万台,增速超400%!HUD硬核玩家强势崛起
    VUE指令、computed计算属性和watch 侦听器(附带详细案例)
    解决VMware Workstation Pro未开启时显示托盘图标的问题
    Mysql数据库的基础语句
    C语言:贪吃蛇游戏(万字解读超详细)
    企业内部安全与风控管理图解
    RL gym 环境(1)—— 安装和基础使用
  • 原文地址:https://blog.csdn.net/qq_54088719/article/details/126281087