如何正確在 MySQL 儲存過程中使用 DELIMITER?


正確的用法如下 -

DELIMITER //
CREATE PROCEDURE yourStoredProcedureName()
BEGIN
 IF  yourCondition then
     yourStatement1 ;
else
    yourStatement2 ;

END IF ;
END
//

DELIMITER ;

我們現在看一個例子並建立一個儲存過程 -

mysql> DELIMITER //
mysql> CREATE PROCEDURE delimiter_demo()
   -> BEGIN
   -> IF 1 THEN
   -> SELECT "If condition will always true";
   -> else
   -> select "No" ;
   -> END IF ;
   -> END
   -> //
Query OK, 0 rows affected (0.17 sec)

mysql> DELIMITER ;

你現在可以使用 CALL 命令來呼叫這個儲存過程

mysql> call delimiter_demo();

這會產生以下輸出 -

+-------------------------------+
| If condition will always true |
+-------------------------------+
| If condition will always true |
+-------------------------------+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.02 sec)

更新於: 17-Dec-2019

269 次瀏覽

開始您的職業生涯 生涯

透過完成課程獲得認證

開始使用
廣告