首页 > 数据库技术 > 详细

mysql存储过程

时间:2019-12-29 20:33:36      阅读:78      评论:0      收藏:0      [点我收藏+]
delimiter $$ -- 不带参数的存储过程  
    create procedure select_emp_count() 
        begin 
            select count(0) from emp; 
        end ;;
        
delimiter $$   -- 带参数的存储过程 
    create procedure select_em_in(in  ename varchar(255))
        begin
            select * from emp where ename=ename;
            end;;
call select_em_in(smith);


MySQL 支持 in (传递给存储过程),out (从存储过程传出) 和 inout (对存储过程传入和传出) 类型的参数。存储过程的代码位于 begin 和 end 语句内,它们是一系列 select 语句,

用来检索值,然后保存到相应的变量 (通过 into 关键字)

delimiter ;;
    create procedure select_emp_inout(
    in _ename varchar(222),
    out _deptno varchar(22),
    inout _empno varchar(222)
    )
        begin 
            select deptno from emp where ename=_ename and empno=_empno into _deptno; 
        end;;
set @_empno = 7499;
set @_name = ALLEN;
call select_emp_inout(@_name, @_deptno,  @_empno);
select @_deptno as deptno, @_empno as empno;  

  • IN 输入参数:表示调用者向过程传入值(传入值可以是字面量或变量)
  • OUT 输出参数:表示过程向调用者传出值(可以返回多个值)(传出值只能是变量)
  • INOUT 输入输出参数:既表示调用者向过程传入值,又表示过程向调用者传出值(值只能是变量)

mysql存储过程

原文:https://www.cnblogs.com/hellohero55/p/12115968.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!