MySQL存储过程的查看与删除实例讲解
作者:霸道小明 时间:2024-01-23 06:14:11
一、查看存储过程
存储过程创建以后,用户可以通过SHOW STATUS语句来查看存储过程的状态,也可以通过SHOW CREATE语句来查看存储过程的定义。用户也可以通过查询information_schema数据库下的Routines表来查看存储过程的信息。本节将详细讲解查看存储过程的状态与定义的方法。
1.SHOW STATUS语句查看存储过程
在MySQL中,可以通过SHOW STATUS语句。其基本语法形式如下:
SHOW PROCEDURE STATUS [ like ‘pattern'] ;
参数PROCEDURE表示查询存储过程;
参数LIKE 'pattern'用来匹配存储过程的名称。
show procedure status like 'proc%';
2.使用SHOW CREATE语句查看存储过程的定义
在MySQL中,可以通过SHOW CREATE语句查看存储过程的状态,语法形式如下:
SHOW CREATE PROCEDURE proc_name ;|\G
参数PROCEDURE表示查询存储过程;
参数proc_name表示存储过程的名称。
Ⅰ使用分号结束
show create procedure proc_age;
Ⅱ使反斜杠结束(使用反斜杠条理更清晰)
3、从information_schema.Routine表中查看存储过程的信息
存储过程和函数的信息存储在information_schema数据库下的Routines表中。可以通过查询该表的记录来查询存储过程和函数的信息。其基本语法形式如下:
SELECT * FROM information_schema.Routines
Where ROUTINE_NAME = ‘proc_name';
字段ROUTINE_NAME是Routines 存储存储过程和函数的列名称;
参数proc_name表示存储过程或函数的名称。
select * from information_schema.Routines
where routine_name = 'proc_age';
或者单独查看存储过程的语句 👇
select routine_definition from information_schema.Routines
where routine_name = 'proc_age';
二、存储过程的删除
在MySQL中删除存储过程通过SQL语句DROP完成:
DROP PROCEDURE proc_name;
关键字DROP PROCEDURE用来表示实现删除存储过程;参数proc_name表示所要删除的存储过程名称。
例如
附:存储过程修改
尽管MySQL数据库支持对存储过程的修改,但是我们依旧不可以修改存储过程中的内容,也不能修改存储过程的名称。如果想要修改存储过程的内容,只能删除原有的存储过程,然后再重新写一个存储过程;如果想要修改存储过程的名称,只能删除原有的存储过程,然后重新创建一个新的存储过程,并且把原有存储过程的内容写入到新的存储过程名称里面。
MySQL只支持修改存储过程的一些特性,该修改命令SQL示例如下:
alter procedure 【存储过程名】 【存储过程特性】;
可以写入的存储过程特性主要有以下6种:
2、no sql。 表示子程序不包含SQL语句。
3、reads sql data。 表示子程序中包含读数据的SQL语句。
4、modifies sql data。 表示子程序中包含写数据的SQL语句。
5、sql security define或sql security invoke。 如果是define,则表示该存储过程只有定义者自身才可以执行,如果是invoke,则表示调用者可以执行。
6、comment 【注释信息】。 表示向该存储过程添加注释信息。
来源:https://blog.csdn.net/qq_54169998/article/details/122763269
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
PyCharm2019 安装和配置教程详解附激活码
![](https://img.aspxhome.com/file/2023/3/115103_0s.png)
div、section、article 的区别
Python 中Operator模块的使用
![](https://img.aspxhome.com/file/2023/5/83845_0s.png)
PHP MySQL的安装与配置详解
Elasticsearch的删除映射类型操作示例
python库pydantic的简易入门教程
Python减肥小工具轻松帮你瘦
![](https://img.aspxhome.com/file/2023/8/65508_0s.gif)
如何防止未经注册的用户绕过注册界面直接进入应用系统?
Python编程编写完善的命令行工具
![](https://img.aspxhome.com/file/2023/8/61478_0s.jpg)
python数据分析之员工个人信息可视化
![](https://img.aspxhome.com/file/2023/4/64704_0s.png)
SQL Server数据库复制失败的原因及解决方法
![](https://img.aspxhome.com/file/2023/6/107686_0s.png)
小白入门篇使用Python搭建点击率预估模型
![](https://img.aspxhome.com/file/2023/6/128496_0s.png)
Python使用内置json模块解析json格式数据的方法
![](https://img.aspxhome.com/file/2023/6/61226_0s.png)
使用Python获取网段IP个数以及地址清单的方法
![](https://img.aspxhome.com/file/2023/2/114552_0s.jpg)
MySQL可视化工具Navicat的连接方法
![](https://img.aspxhome.com/file/2023/8/116788_0s.png)
asp如何用FSO对象显示一个文本文件?
Centos下升级php5.2到php5.4全记录(编译安装)
JavaScript入门教程(7) History历史对象
认识那些被忽略的SQL Server注入技巧
Python机器学习NLP自然语言处理基本操作家暴归类
![](https://img.aspxhome.com/file/2023/8/99128_0s.gif)