在本教程中,我们将逐步介绍如何使用CREATE PROCEDURE语句开发第一个MySQL存储过程。 另外,我们将向您展示如何从SQL语句调用存储过程。
编写第一个MySQL存储过程
我们将开发一个名为GetAllProducts()的简单存储过程来帮助您熟悉创建存储过程的语法。 GetAllProducts()存储过程从products表中选择所有产品。
启动 mysql 客户端工具并键入以下命令:
DELIMITER // CREATE PROCEDURE GetAllProducts() BEGIN SELECT * FROM products; END //DELIMITER ;
让我们来详细地说明上述存储过程:
在mysql客户端工具中编写存储过程非常繁琐,特别是当存储过程复杂时。 大多数用于MySQL的GUI工具允许您通过直观的界面创建新的存储过程。
例如,在MySQL Workbench中,您可以如下创建一个新的存储过程:
首先,右键单击Stored Procedures…并选择“Create Stored Procedure…”菜单项。
接下来,编写存储过程代码,然后单击Apply按钮
CREATE PROCEDURE `yiibaidb`.`GetAllProducts`()BEGIN SELECT * FROM yiibaidb.products;END
然后,您可以在MySQL将其存储在数据库中之前查看代码。如果一切都没有问题,点击Apply按钮。如下所示 –
之后,MySQL将存储过程编译并放入数据库目录中; 单击Fished按钮完成。
最后,可以在yiibaidb数据库的例程下看到上面所创建的新存储过程。如下图所示 –
到此,我们已经成功地创建了一个存储过程。下面我们将学习如何使用它。
调用存储过程
要调用存储过程,可以使用以下SQL命令:
CALL STORED_PROCEDURE_NAME();
使用CALL语句调用存储过程,例如调用GetAllProducts()存储过程,则使用以下语句:
CALL GetAllProducts();
如果您执行上述语句,将查询获得products表中的所有产品。如下图所示 –
在本教程中,您已经学习了如何使用CREATE PROCEDURE语句编写一个简单的存储过程,并使用CALL语句从SQL语句中调用它。
原创文章,作者:筱凯,如若转载,请注明出处:https://www.jingyueyun.com/ask/349.html