Heim >Datenbank >MySQL-Tutorial >MySQL简略存储过程示例(持续追加)

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

WBOY
WBOYOriginal
2016-06-07 16:25:041159Durchsuche

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;
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn