Listing Stored Functions

摘要:在本教程中,您将学习如何通过使用SHOW FUNCTION STATUS或查询数据字典来显示数据库中存储的函数。

使用SHOW FUNCTION STATUS语句列出存储函数

SHOW FUNCTION STATUSSHOW PROCEDURE STATUS类似,但适用于存储的函数。

以下是SHOW FUNCTION STATUS语句的基本语法:

SHOW FUNCTION STATUS 
[LIKE 'pattern' | WHERE search_condition];Code language: SQL (Structured Query Language) (sql)

SHOW FUNCTION STATUS语句返回存储函数的所有特征。下面的语句显示了当前MySQL服务器中所有存储的函数:

SHOW FUNCTION STATUS;Code language: SQL (Structured Query Language) (sql)

请注意, SHOW FUNCTION STATUS仅显示您有权访问的功能。

如果您只想显示特定数据库中的存储函数,可以在SHOW FUNCTION STATUS中使用WHERE子句,如以下语句所示:

SHOW FUNCTION STATUS 
WHERE search_condition;Code language: SQL (Structured Query Language) (sql)

例如,此语句显示示例数据库classicmodels中的所有存储函数:

SHOW FUNCTION STATUS 
WHERE db = 'classicmodels';Code language: SQL (Structured Query Language) (sql)

如果要查找名称中包含特定单词的存储函数,可以使用LIKE子句:

SHOW FUNCTION STATUS 
LIKE '%pattern%';Code language: SQL (Structured Query Language) (sql)

以下语句显示名称包含单词Customer所有存储函数:

SHOW FUNCTION STATUS LIKE '%Customer%';Code language: SQL (Structured Query Language) (sql)

使用数据字典列出存储的函数

MySQL数据字典有一个routines表,保存了当前MySQL服务器中所有数据库的存储函数信息。

此查询查找特定数据库中的所有存储函数:

SELECT 
    routine_name
FROM
    information_schema.routines
WHERE
    routine_type = 'FUNCTION'
        AND routine_schema = '<database_name>';Code language: SQL (Structured Query Language) (sql)

例如,以下语句返回classicmodels数据库中所有存储的函数:

SELECT 
    routine_name
FROM
    information_schema.routines
WHERE
    routine_type = 'FUNCTION'
        AND routine_schema = 'classicmodels';Code language: SQL (Structured Query Language) (sql)

使用 MySQL Workbench 显示存储的函数

如果您使用 MySQL Workbench,则可以查看数据库中所有存储的函数。

步骤 1. 连接到要显示存储函数的数据库。

步骤2.打开“函数”菜单,您将看到属于数据库的函数列表。

MySQL 显示函数

在本教程中,您学习了如何使用SHOW FUNCTION STATUS语句并从数据字典中查询来显示数据库中存储的函数。

本教程有帮助吗?