如何在不使用‘BEGIN’和‘END’的情况下创建 MySQL 存储过程?


我们可以不用 ‘BEGIN’ 和 ‘END’ 创建 MySQL 存储过程,与使用它们创建的过程相同,唯一不同之处是省略 BEGIN 和 END。在下例中,我们创建一个不带 ‘BEGIN’ 和 ‘END’ 的存储过程以获取某个表的所有行 -

示例

mysql> Delimiter //
mysql> CREATE PROCEDURE Hello()
    -> SELECT * from Student_info; //
Query OK, 0 rows affected (0.08 sec)

我们可以看到生成了不带 BEGIN 和 END 的 MySQL 存储过程。现在通过 CALL 语句调用它 -

mysql> Delimiter ;

mysql> CALL Hello();
+-----+---------+------------+------------+
| id  | Name    | Address    | Subject    |
+-----+---------+------------+------------+
| 101 | YashPal | Amritsar   | History    |
| 105 | Gaurav  | Chandigarh | Literature |
| 125 | Raman   | Shimla     | Computers  |
+------+---------+------------+------------+
3 rows in set (0.18 sec)
Query OK, 0 rows affected (0.28 sec)

更新于:2020 年 6 月 22 日

425 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始
广告