IFロジックを使用してストアドプロシージャ内のストアドプロシージャを呼び出しますか?
ストアドプロシージャ内でストアドプロシージャを呼び出すための構文は次のとおりです-
If yourInputValue > 100 then call yourProcedureName1(); else call yourProcedureName2(); end If ; END
上記の構文を実装しましょう。上記の概念を実装するために、ストアドプロシージャを作成しましょう-
mysql> delimiter // mysql> create procedure Hello_Stored_Procedure() -> BEGIN -> select 'Hello World!!!'; -> END -> // Query OK, 0 rows affected (0.18 sec)
2番目のストアドプロシージャを作成するためのクエリは次のとおりです-
mysql> create procedure Hi_Stored_Procedure() -> BEGIN -> select 'Hi!!!'; -> END -> // Query OK, 0 rows affected (0.17 sec)
これは、IFロジックを使用してストアドプロシージャ内のストアドプロシージャを呼び出すためのクエリです-
mysql> DELIMITER // mysql> create procedure test(IN input int) -> BEGIN -> If input > 100 then -> call Hello_Stored_Procedure(); -> else -> call Hi_Stored_Procedure(); -> end If ; -> END -> // Query OK, 0 rows affected (0.18 sec)
これで、call-
を使用してストアドプロシージャを呼び出すことができます。mysql> delimiter ; mysql> call test(110);
これにより、次の出力が生成されます-
+----------------+ | Hello World!!! | +----------------+ | Hello World!!! | +----------------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.02 sec)
-
MySQL Workbenchを使用してストアドプロシージャを作成しますか?
まず、ストアドプロシージャを作成しましょう。以下は、MySQLWorkbenchを使用してストアドプロシージャを作成するためのクエリです。 use business; DELIMITER // DROP PROCEDURE IF EXISTS SP_GETMESSAGE; CREATE PROCEDURE SP_GETMESSAGE() BEGIN DECLARE MESSAGE VARCHAR(100); SET MESSAGE="HELLO"; SELECT CONCAT(MESSAGE,' ','MYSQL!!!!'); END //
-
MySQLストアドプロシージャでNULLまたは空の変数を確認します
NULLまたは空の変数をチェックするには、IF条件を使用します。ストアドプロシージャを作成しましょう- mysql> delimiter // mysql> create procedure checkingForNullDemo(Name varchar(20)) begin if Name is NULL OR Name='' then select 'Adam Smith'; else