基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
mysql.proc
更新时间:2026-07-19 16:40:56
说明
该视图从 V2.2.77 版本开始引入。
功能描述
用于展示存储过程的信息。
字段说明
| 字段名称 | 类型 | 是否可以为 NULL | 描述 |
|---|---|---|---|
| db | varchar(128) | NO | 数据库名 |
| name | varchar(128) | NO | 存储过程的名称 |
| type | varchar(10) | NO | 存储过程的类型: |
| specific_name | varchar(128) | NO | 同name字段 |
| language | varchar(4) | NO | 未使用,当前为固定值SQL |
| sql_data_access | varchar(32) | NO | 未使用,当前为固定值CONTAINS_SQL |
| is_deterministic | varchar(4) | NO | 未使用,标识存储过程是否使DETERMINISTIC 特性定义: |
| security_type | varchar(10) | NO | 未使用,标识 SQL 的访问属性: |
| param_list | longblob | NO | 存储过程的参数列表信息 |
| returns | longblob | NO | 存储过程的返回值信息 |
| body | longblob | NO | 存储过程定义的文本信息 |
| definer | varchar(77) | NO | 创建存储过程的用户 |
| created | timestamp(6) | NO | 创建存储过程的日期和时间 |
| modified | timestamp(6) | NO | 存储过程的最后修改日期和时间 |
| sql_mode | text | NO | 创建或更改存储过程时有效的 SQL 模式,在该模式下执行存储过程 |
| comment | varchar(4096) | NO | 注释文本 |
| character_set_client | varchar(128) | NO | 创建或更改存储过程时 character_set_client 系统变量的会话值 |
| collation_connection | varchar(128) | NO | 创建或更改存储过程时 collation_connection 系统变量的会话值 |
| collation_database | varchar(128) | NO | 创建或更改存储过程时 collation_database 系统变量的会话值 |
| body_utf8 | longblob | NO | 过程定义,与 body 字段相同 |
查询示例
查看存储过程 my_proc 的详细信息。
obclient [infotest]> SELECT * FROM mysql.proc WHERE NAME='my_proc'\G
查询结果如下:
*************************** 1. row ***************************
DB: infotest
NAME: my_proc
TYPE: PROCEDURE
SPECIFIC_NAME: my_proc
LANGUAGE: SQL
SQL_DATA_ACCESS: READS_SQL_DATA
IS_DETERMINISTIC: NO
SECURITY_TYPE: DEFINER
PARAM_LIST: IN emp_no INT,OUT emp_count INT
RETURNS:
BODY: BEGIN
SELECT COUNT(*) INTO emp_count FROM emp WHERE empno=emp_no;
END
DEFINER: 'root'@'%'
CREATED: 2025-01-24 14:00:18.496744
MODIFIED: 2025-01-24 14:00:18.496744
SQL_MODE: STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_AUTO_CREATE_USER
COMMENT:
CHARACTER_SET_CLIENT: utf8mb4
COLLATION_CONNECTION: utf8mb4_general_ci
DB_COLLATION: utf8mb4_general_ci
BODY_UTF8: BEGIN
SELECT COUNT(*) INTO emp_count FROM emp WHERE empno=emp_no;
END
1 row in set