在MySQL中使用分隔符创建存储过程

您可以使用create procedure命令创建存储过程。语法如下-

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 //

现在,您需要使用来更改定界符;调用存储过程-

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)

上面,我们使用了表“ StoredProcTable”,该表具有三个记录。使用存储过程显示所有记录。

您可以使用存储过程检查表中有多少条记录-

mysql> delimiter //
mysql> create procedure CountingRecords()
   −> begin
   −> select count(*) as AllRecords from StoredProcTable;
   −> end //

mysql> delimiter ;

使用CALL命令调用存储过程。查询如下-

mysql> call CountingRecords();

以下输出显示记录数-

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