-- 顯示procedure狀態

show procedure status;


-- 顯示procedure p1的建立內容

show create procedure p1;


-- 暫停mysql程序1秒,可精確設定到0.01秒,用於procedure中可避免迴圈執行一下占用系統太多資源

Select sleep(1);


-- 如果存在時先刪除 PROCEDURE

drop procedure if exists test;


以下是一個stored procedure基本範例:

-- 重新定義結束符號為//(原本為; )

DELIMITER //

 

-- 建立一個名為 test PROCEDURE,可以帶入數字型態的 var1 var2 二個參數

CREATE PROCEDURE test(var1 INT(10), var2 INT(10))

BEGIN

        -- 處理的邏輯寫在這裡,BEGIN END 中間的區塊

        -- 定義變數

        DECLARE value INT(10);

 

        -- 變數賦值

        SET value = var1 * var2;

 

        -- 邏輯判斷

        IF value < 10 THEN

                SELECT 'value < 10';

        ELSEIF value >= 10 AND value <= 20 THEN

                SELECT 'value between 10 and 20';

        ELSE

                SELECT 'value &gt; 20';

        END IF;

 

-- 特別注意,在 END 隻後必須加上我們先前重新定義的結束符號,表示 PROCEDURE 的結尾

END//

delimiter ;


創作者介紹
創作者 miggo 的頭像
miggo

麥克的學習紀錄

miggo 發表在 痞客邦 留言(2) 人氣()


留言列表 (2)

發表留言
  • 羅
  • 謝謝分享
  • 設計
  • 常執行的SQL敘述就可以建立為「Stored procedure」元件,好用