Mssql存储过程中的return在mysql中用什么?
解决方案 »
- 为什么mysqladmin processlist会出错?
- linux下mysql乱码
- C代码连接mysql问题
- 包含视图的mysql怎么备份和恢复??
- 请教在bin下执行./mysqldump -u someone -p db < db.sql和./mysql -u someone -p db < db.sql的区别
- 春节放分,同时请教下一个子查询问题
- ems mysql manager 注册数据库的时候出问题。请帮忙
- 菜鸟问题
- mysql存储二进制问题.
- 怎么表达检索百分之x的记录
- 如何创建mysql 表关系,分不够立刻加!!!
- mysql 5.0.51b 创建表时 出现1064错误 急需解答
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 ;
create procedure p1
begin
select 1;
return ;
select 2;
end