存儲過程的好處:數據庫
CREATE函數
[DEFINER = {user | CURRENT_USER}].net
PROCEDURE<name> (PARAMETER(S)...)get
[characteristic(s)...] routine_bodyio
The syntax for creating a function is:function
CREATE變量
[DEFINER = {user | CURRENT_USER }]數據類型
FUNCTION sp_name ([parameter])程序
RETURNS typeim
[characteristic(s)...] routine_body
【IN | OUT | INOUT】<parameter name> type
實例1、
CREATE PROCEDURE user_avg(OUT average NUMERIC(5,2))
BEGIN
SELECT AVG(age) INTO average FROM users
END;
執行該存儲過程:
CALL user_avg(@a);
SELECT @a;
實例2、
CREATE FUNCTION is_young(uuname VARCHAR(64))
RETURNS BOOLEAN
DETERMINISTIC
BEGIN
DECLARE age_check DECIMAL(5,2);
DECLARE is_young BOOLEAN;
SELECT age INTO age_check FROM users WHERE username =uuname;
IF (age_check<40) THEN
SET is_young =1;
ELSE
SET is_young =0;
END IF;
RETURN(is_young);
END
數據庫存在的admin1的時候返回1
數據庫不存在的admin11的時候返回0