首页 >数据库 >mysql教程 >一个MySQL存储过程如何调用它内部的另一个MySQL存储过程?

一个MySQL存储过程如何调用它内部的另一个MySQL存储过程?

王林
王林转载
2023-09-05 08:45:121221浏览

一个MySQL存储过程如何调用它内部的另一个MySQL存储过程?

一个 MySQL 存储过程很可能可以调用其内部的另一个 MySQL 存储过程。为了演示这一点,我们举一个例子,其中一个存储过程将调用另一个存储过程来找出last_insert_id。

示例

mysql> Create table employee.tbl(Id INT NOT NULL AUTO_INCREMENT, Name Varchar(30) NOT NULL, PRIMARY KEY(id))//
Query OK, 0 rows affected (3.87 sec)

mysql> Create Procedure insert1()
   -> BEGIN insert into employee.tbl(name) values ('Ram');
   -> END//
Query OK, 0 rows affected (0.10 sec)

现在,在下一个过程 insert2() 中,我们将调用第一个存储过程,即 insert1()。

mysql> Create Procedure insert2()
   -> BEGIN
   -> CALL insert1();
   -> Select last_insert_id();
   -> END //
Query OK, 0 rows affected (0.11 sec)
mysql> Delimiter ;

mysql> Call insert2();
+------------------+
| last_insert_id() |
+------------------+
| 1                |
+------------------+
1 row in set (0.36 sec)
Query OK, 0 rows affected (0.37 sec)

上面的结果集显示,当我们调用 insert1() 时,它会在名为 employee.tbl 的表中插入第一个值,而当我们在第二个存储过程(即 insert2())中选择 last_insert_id() 时,它会给出输出 1。

以上是一个MySQL存储过程如何调用它内部的另一个MySQL存储过程?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除