PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

MySQL存储过程的查看与删除方法是什么

WBOY
WBOY 转载
2023-05-28 15:31:16 989浏览

    一、查看存储过程

    存储过程创建以后,用户可以通过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%';

    MySQL存储过程的查看与删除方法是什么

    2.使用SHOW CREATE语句查看存储过程的定义

    在MySQL中,可以通过SHOW CREATE语句查看存储过程的状态,语法形式如下:

    SHOW CREATE PROCEDURE proc_name ;|\G
    • 参数PROCEDURE表示查询存储过程;

    • 参数proc_name表示存储过程的名称。

    Ⅰ使用分号结束

    show create procedure proc_age;

    MySQL存储过程的查看与删除方法是什么

    Ⅱ使反斜杠结束(使用反斜杠条理更清晰)

    MySQL存储过程的查看与删除方法是什么

    3、从information_schema.Routine表中查看存储过程的信息

    Routines table in the information_schema database stores information about stored procedures and functions.。可以通过查询该表的记录来查询存储过程和函数的信息。其基本语法形式如下:

    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';

    MySQL存储过程的查看与删除方法是什么

    或者单独查看存储过程的语句

    select routine_definition from information_schema.Routines 
        where routine_name = 'proc_age';

    MySQL存储过程的查看与删除方法是什么

    二、存储过程的删除

    在MySQL中删除存储过程通过SQL语句DROP完成:

    DROP PROCEDURE proc_name;
    关键字DROP PROCEDURE用来表示实现删除存储过程;参数proc_name表示所要删除的存储过程名称。

    例如

    MySQL存储过程的查看与删除方法是什么

    附:存储过程修改

    尽管MySQL数据库支持对存储过程的修改,但是我们依旧不可以修改存储过程中的内容,也不能修改存储过程的名称。如果想要修改存储过程的内容,只能删除原有的存储过程,然后再重新写一个存储过程;如果想要修改存储过程的名称,只能删除原有的存储过程,然后重新创建一个新的存储过程,并且把原有存储过程的内容写入到新的存储过程名称里面。

    MySQL只支持修改存储过程的一些特性,该修改命令SQL示例如下:

    alter procedure 【存储过程名】 【存储过程特性】;

    可以写入的存储过程特性主要有以下6种:

    2、no sql。 表示子程序不包含SQL语句。

    3、reads sql data。 表示子程序中包含读数据的SQL语句。

    4、modifies sql data。 表示子程序中包含写数据的SQL语句。

    重新表达:可使用sql security define或sql security invoke。 如果是define,则表示该存储过程只有定义者自身才可以执行,如果是invoke,则表示调用者可以执行。

    6、comment 【注释信息】。 表示向该存储过程添加注释信息。

    以上就是MySQL存储过程的查看与删除方法是什么的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:亿速云,如有侵犯,请联系admin@php.cn删除