首页  >  文章  >  数据库  >  MySQL简略存储过程示例(持续追加)

MySQL简略存储过程示例(持续追加)

WBOY
WBOY原创
2016-06-07 16:25:041128浏览

MySQL简单存储过程示例(持续追加) 示例一: CREATE PROCEDURE test(IN myid INT(3),IN myname VARCHAR(22),IN myage INT(3))if myid=0THEN INSERT INTO a(name,age) VALUES(myname,myage);ELSE UPDATE a SET a.name=myname,a.age=myage WHERE a.id=myid;END I

MySQL简单存储过程示例(持续追加)
示例一:
CREATE PROCEDURE test(IN myid INT(3),IN myname VARCHAR(22),IN myage INT(3))
if myid=0
THEN
 INSERT INTO a(name,age) VALUES(myname,myage);
ELSE
 UPDATE a SET a.name=myname,a.age=myage WHERE a.id=myid;
END IF

示例二:
CREATE PROCEDURE getShang(IN worknum VARCHAR(10),OUT outName VARCHAR(20))

BEGIN
DECLARE ret int;
DECLARE p1 VARCHAR(10);
DECLARE p2 VARCHAR(10);

set ret = (SELECT gt.iparentgroup
FROM grouptbl gt,groupmembertbl gmt
WHERE gt.igroupid = gmt.igroupid
AND gmt.smemberid = worknum);

if ret = 0

THEN
 
 set p1=(SELECT gt.sgroupname
 FROM grouptbl gt,groupmembertbl gmt
 WHERE gt.igroupid = gmt.igroupid
 AND gmt.smemberid = worknum);
 SET outName = p1;

ELSE
 
 set p2 = (
 SELECT grouptbl.sgroupname
 FROM grouptbl WHERE grouptbl.igroupid = 
 (SELECT gt.iparentgroup
 FROM grouptbl gt,groupmembertbl gmt
 WHERE gt.igroupid = gmt.igroupid
 AND gmt.smemberid = worknum)
 );
 SET outName = p2;
END IF;

END

调用:
CALL getShang('ABC1122',@groupName);
SELECT @groupName;
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn