存储过程被创建后,就会一直保存在数据库服务器上,直至被删除。当 MySQL 数据库中存在废弃的存储过程时,我们需要将它从数据库中删除。
MySQL 中使用 DROP PROCEDURE 语句来删除数据库中已经存在的存储过程。语法格式如下:
DROP PROCEDURE [ IF EXISTS ] <过程名>
语法说明如下:
- 过程名:指定要删除的存储过程的名称。
- IF EXISTS:指定这个关键字,用于防止因删除不存在的存储过程而引发的错误
注意:存储过程名称后面没有参数列表,也没有括号,在删除之前,必须确认该存储过程没有任何依赖关系,否则会导致其他与之关联的存储过程无法运行。
实例 1
下面删除存储过程 ShowStuAge,SQL 语句和运行结果如下:
mysql> drop procedure if exists ShowStuAge. Query OK, 0 rows affected (0.28 sec)
这里的sql结束语句是'.'而不是';', 以为之前创建存储过程一节中使用了DELIMITER 语句修改成了'.', 也可以自行修改为';'或其他的
删除后,可以通过查询 information_schema 数据库下的 routines 表来确认上面的删除是否成功。SQL 语句和运行结果如下:
mysql> SELECT * FROM ROUTINES WHERE routine_name='ShowStuAge'; Empty set (0.00 sec)
此sql是在数据库information_schema中执行的...
结果显示,没有查询出任何记录,说明存储过程 ShowStuAge已经被删除了。
存储过程的其他详解在后续的章节中会继续, 请持续关注...