mysql查看function和存储过程

什么是存储过程?

存储过程是有SQL语句和控制流语句组成的语句块,存储过程存储在数据库内,可由应用程序通过存储过程的名称调用执行;存储过程在开发软件时,可以把大量的数据操作放在服务器端的存储过程中,而只返回需要的数据,这样就减少了数据的传输量,速度也可以大大地提高。

存储过程可以提高性能等优点,也有其缺点,比如:移植性差;存储过程的移植确实很困难,一般业务逻辑复杂到需要写存储过程的地步,总会不可避免地用到数据库独有的特性和语法,更换数据库时这部分代码就需要重写。如果只是简单地替换函数名和参数规则(如日期转换等),那成本还不高;如果用到了新数据库不支持的某种特性,那还要重新设计算法来编写计算逻辑;如果还要再兼顾性能因素,有时候就会是个不可能完成的任务了。还有维护复杂,管理调试困难等缺点。

查看数据库中的function和存储过程

#方法一:
#存储过程
select `name` from mysql.proc where db = 'your_db_name' and `type` = 'PROCEDURE'; 
  
#函数
select `name` from mysql.proc where db = 'your_db_name' and `type` = 'FUNCTION';  

#方法二:
#存储过程
show procedure status; 	
 
#函数
show function status;   

查看存储过程或function的创建代码

#存储过程
show create procedure proc_name;

#函数
show create function func_name;
posted @ 2022-07-20 15:03  du-z  阅读(1917)  评论(0编辑  收藏  举报