您好,登錄后才能下訂單哦!
一組SQL語句集,速度快,只有首次執行需經過編譯和優化步驟,后續被調用可以直接執行
Sample:
DROP PROCEDURE IF EXISTS `proc_adder`;
DELIMITER &&
CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_adder`(IN a int, IN b int, OUT sum int)
BEGIN
DECLARE c int;
/*DECLARE c int DEFAULT 10*/
if a is null then set a = 0;
end if;
if b is null then set b = 0;
end if;
set sum = a + b;
END
&&
DELIMITER ;
說明:
DEFINER: 創建者
DECLARE: 定義變量
SET:為變量賦
SELECT…INTO語句為變量賦值如下:
SELECT col_name[,…] INTO var_name[,…]
FROM table_name WEHRE condition
DELIMITER:
MySQL中默認的語句結束符為分號(;)。存儲過程中的SQL語句需要分號(;)來結束。為了避免沖突,首先用"DELIMITER &&"將MySQL的結束符設置為&&。最后再用"DELIMITER ;"來將結束符恢復成分號。這與創建觸發器時是一樣的。
常用語法:
IF:
IF type = 0 THEN
set c = 'param is 0';
ELSEIF type = 1 THEN
set c = 'param is 1';
ELSE
set c = 'param is others, not 0 or 1';
END IF;
CASE:
CASE type
WHEN 0 THEN
set c = 'param is 0';
WHEN 1 THEN
set c = 'param is 1';
ELSE
set c = 'param is others, not 0 or 1';
END CASE;
WHILE:
DECLARE i int;
DECLARE s int;
SET i = 0;
SET s = 0;
WHILE i <= n DO
set s = s + i;
set i = i + 1;
END WHILE;
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。