ホームページ  >  記事  >  データベース  >  MySQL で区切り文字付きストアド プロシージャを作成する

MySQL で区切り文字付きストアド プロシージャを作成する

王林
王林転載
2023-09-09 17:57:08788ブラウズ

MySQL で区切り文字付きストアド プロシージャを作成する

createprocedure コマンドを使用してストアド プロシージャを作成できます。構文は次のとおりです。 -

delimiter //
CREATE PROCEDURE yourStoreProcedureName()
BEGIN
   Declare variable here
   The query statement
END //

delimiter //

上記の構文を適用してストアド プロシージャを作成します。クエリは次のとおりです -

mysql> use test;
Database changed
mysql> delimiter //
mysql> create procedure Sp_callTableStoredProcTable()
   −> begin
   −> select *from StoredProcTable;
   −> end //
Query OK, 0 rows affected (0.54 sec)

ストアド プロシージャを呼び出すには、区切り文字を ; に変更する必要があります -

mysql> delimiter ;

CALL コマンドを使用してストアド プロシージャを呼び出すことができます。構文は次のとおりです -

CALL yourStoredProcedureName();

上記のストアド プロシージャは、以下のクエリに示すように CALL コマンドを使用して呼び出すことができます。 -

mysql> call Sp_callTableStoredProcTable();

以下は出力です。-

+-----------+------+
| FirstName | Age  |
+-----------+------+
| John      | 23   |
| Bob       | 24   |
| David     | 20   |
+-----------+------+
3 rows in set (0.03 sec)

Query OK, 0 rows affected (0.06 sec)

上記では、テーブル 'StoredProcTable'、このテーブルには 3 つのレコードがあります。すべてのレコードはストアド プロシージャを使用して表示されます。

ストアド プロシージャを使用してテーブル内のレコード数を確認できます -

mysql> delimiter //
mysql> create procedure CountingRecords()
   −> begin
   −> select count(*) as AllRecords from StoredProcTable;
   −> end //
Query OK, 0 rows affected (0.19 sec)

mysql> delimiter ;

CALL コマンドを使用してストアド プロシージャを呼び出します。クエリは次のとおりです。-

mysql> call CountingRecords();

次の出力が表示されます。 レコード数 -

+------------+
| AllRecords |
+------------+
|          3 |
+------------+
1 row in set (0.31 sec)

Query OK, 0 rows affected (0.33 sec)

以上がMySQL で区切り文字付きストアド プロシージャを作成するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。