查看存储过程和函数 === 创建完存储过程和函数后,通常需要查看它们的定义、状态和元数据。MySQL 提供了多种方式来完成这类操作。 ### SHOW STATUS语句查看存储过程和函数的状态 可以使用 `SHOW PROCEDURE STATUS` 和 `SHOW FUNCTION STATUS` 查看基本状态信息。 例如: ```sql SHOW PROCEDURE STATUS; SHOW FUNCTION STATUS; ``` 如果只想查看当前数据库下的对象,也可以加筛选条件。 这些结果通常会包含: - 对象名称 - 所属数据库 - 创建时间 - 修改时间 - 定义者 ### SHOW CREATE语句查看存储过程和函数的定义 如果想查看完整定义,可以使用: ```sql SHOW CREATE PROCEDURE 过程名; SHOW CREATE FUNCTION 函数名; ``` 例如: ```sql SHOW CREATE PROCEDURE get_all_user; SHOW CREATE FUNCTION get_level; ``` 这样可以直接看到创建时的完整 SQL 定义。 ### 从information_schema.Routines表中查看存储过程和函数的信息 MySQL 也可以通过 `information_schema.ROUTINES` 视图查看过程和函数信息。 例如: ```sql SELECT ROUTINE_NAME, ROUTINE_TYPE, CREATED, LAST_ALTERED FROM information_schema.ROUTINES WHERE ROUTINE_SCHEMA = DATABASE(); ``` 这种方式适合: - 批量查看 - 条件筛选 - 脚本化管理 ### 小结 看状态可以用 `SHOW ... STATUS`,看定义可以用 `SHOW CREATE ...`,做批量化和条件化查询时则可以使用 `information_schema.ROUTINES`。