Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

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)