Mssql存储过程中的return在mysql中用什么?

解决方案 »

  1.   

    直接 select 就可以了。
      

  2.   

    mysql存储过程有输入和输出参数。#建表
    Create table student(
          id int auto_increment,
          name varchar(20),
          age tinyint,
          re varchar(50),
           primary key(id)
    );#插入数据
    Insert into student values(1,"zhouys",90, "");
    commit;#建立存储过程,1个输入参数,3个输出参数
    DELIMITER $$;
    create procedure querystudent(
           in in_id int ,   
           #
           out out_ret int, 
           out out_name varchar(20),
           out out_age   int
    )
    label_a:begin
           declare v_name varchar(20) ;
           declare v_age tinyint ;       if (in_id<=0) then 
                  set out_ret=-1; #id error
                  leave label_a;
           end if;
                  
           SELECT name,age into v_name,v_age from student where id=in_id limit 1;
           
           if v_age is NULL then 
                  set out_ret=-2; #don't found
                  leave label_a;
           end if;     
                  
           set out_ret=0;
           set out_name=v_name;
           set out_age=v_age;
    END$$
    DELIMITER ;$$
    #调用
    call querystudent (1,@ret,@ out_name,@ out_age)");
    SELECT @ret,@ out_name,@ out_age ;
      

  3.   

    比方说想这样,应该怎么办?
    create procedure p1
    begin
    select 1;
    return ;
    select 2;
    end
      

  4.   

    mysql 存储过程中不允许使用return !!!