mysql 存储过程 存储函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 存储过程 存储函数相关的知识,希望对你有一定的参考价值。

-- ************************************************
--              存储过程
-- ************************************************

-- 创建存储过程

drop procedure if exists pld;  -- 判断是否存储,存在则删除
CREATE PROCEDURE pld(IN pid INT,OUT nm VARCHAR(100))

BEGIN
		-- UPDATE userinfo SET uname = ‘八戒‘ WHERE id = pid;
		SELECT uname  FROM userinfo WHERE id = pid INTO nm;

END;



-- 调用带返回值存储过程
set @pd = 1;
call pld(@pd,@a);
SELECT @a as a;


-- ************************************************
--              存储函数
-- ************************************************

-- 创建存储函数
DROP FUNCTION IF EXISTS getName; -- 判断是否存在,存在则删除
CREATE FUNCTION getName(gid INT) RETURNS VARCHAR(100)
DETERMINISTIC
BEGIN
   DECLARE unames VARCHAR(100);
   SET unames=(SELECT uname FROM userinfo WHERE id=gid);
   RETURN (unames);
END;



#测试调用,业务中简单需求没必要这么封装。
SELECT getName(id) FROM userinfo;

  

以上是关于mysql 存储过程 存储函数的主要内容,如果未能解决你的问题,请参考以下文章

Mysql存储过程和函数

MySQL基础--存储过程和函数

MYSQL存储过程,函数,光标

mysql-存储过程和函数-热身运动

MySQL存储过程和函数

mysql事务触发器视图存储过程函数