• 7.2存储函数


    学会了存储过程,存储函数就很简单了。

    概念上,存储函数比存储过程多了个返回值。使用方式和以前学过的系统函数相同,如:year('2020-12-01')。

    语法上,少许修改,多了一点关于返回值的东西。

    例:

     1 delimiter ~
     2 drop function if exists get_one~
     3 create function get_one(a varchar(20),b varchar(20))
     4 returns varchar(50)
     5 DETERMINISTIC
     6  begin
     7   declare c varchar(50);
     8   set c=concat(a,' and ',b,'are good friends.');
     9   return c;
    10  end~
    11 delimiter ;

    说明:

    1、以上代码与存储过程相似,差不多把所有procedure替换为function。

    2、第5行DETERMINISTIC用于声明该存储函数是确定性的,即相同输入总是相同输出,不会对可能存在的主从服务器造成不一致的影响,以避免1418错误。

    3、第4行表示该存储过程返回一个字符串,第9行给出这个字符串是什么。

    调用:

     另例:在数据库d1中,输入姓名,获得该学生的最高分:

    delimiter ~
    drop function if exists get_one~
    create function get_one(axm varchar(20))
    returns int
    DETERMINISTIC
     begin
      declare axh int;
      declare acj int;
      select xh into axh from t1 where xm=axm;
      select max(cj) into acj from t2 where xh=axh;
      return acj;
     end~
    delimiter ;

    运行结果:

     存储函数的修改删除,和存储过程类似。

  • 相关阅读:
    idea 编程字体推荐
    推荐!国外程序员整理的系统管理员资源大全
    jquery阻止事件冒泡的3种方式
    web前端打印总结
    前端打印插件
    object实现小老鼠交互
    前端性能优化(DOM篇)
    输入框获得焦点时外边框颜色改变
    webstorm配置scss自动编译路径
    微信开发测试号配置
  • 原文地址:https://www.cnblogs.com/wanjinliu/p/15729952.html
Copyright © 2020-2023  润新知