MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

ストアドプロシージャからのメッセージを表示するにはどうすればよいですか?


条件に基づいてストアドプロシージャからのメッセージを表示するには、IF-ELSE条件-

を使用します。
mysql> DELIMITER //
mysql> CREATE PROCEDURE showMessage(value int,Name varchar(20))
   BEGIN
      IF(value > 100) then
         SELECT CONCAT("HELLO"," ",Name);
      ELSE
         SELECT CONCAT("BYE"," ",Name);
      END IF;
      END
      //
Query OK, 0 rows affected (0.18 sec)
mysql> DELIMITER ;

ケース1 −値が100を超える場合は、CALLコマンドを使用してストアドプロシージャを呼び出します-

call showMessage(200,'John');

これにより、次の出力が生成されます-

+--------------------------+
| CONCAT("HELLO"," ",Name) |
+--------------------------+
| HELLO John               |
+--------------------------+
1 row in set (0.00 sec)
Query OK, 0 rows affected, 1 warning (0.02 sec)

ケース2 −値が100未満の場合、ELSE条件が実行されるため、差分メッセージが表示されます-

mysql> call showMessage(10,'John');

これにより、次の出力が生成されます-

+------------------------+
| CONCAT("BYE"," ",Name) |
+------------------------+
| BYE John               |
+------------------------+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
>
  1. MySQLで列名として「from」を作成するにはどうすればよいですか?

    「from」は予約語であるため、バッククォート記号を使用して列名と見なします。ここで、予約語をバックティックで囲んだテーブルを作成します- mysql> create table DemoTable1810      (      `from` varchar(20)      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1810 v

  2. MySQLのストアドプロシージャからのテーブルレコードを表示する

    まずテーブルを作成しましょう- mysql> create table DemoTable1933    (    ClientName varchar(20)    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1933 values('Chris Brown'); Query OK, 1 row affected (0.00 sec) mysql