
一个 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()。
本书将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。 本书是第4版,经过了全面的更新、重写和扩展,包括PHP5.3最新改进的特性(例如,更好的错误和异常处理),MySQL的存储过程和存储引擎,Ajax技术与Web2.0以及Web应用需要注意的安全
400
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中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号