首页 >常见问题 >mysql.proc是什么表

mysql.proc是什么表

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌原创
2023-07-25 15:57:372019浏览

mysql.proc是MySQL系统数据库中的一个系统表,用于存储关于存储过程和函数的元数据信息,通过查询mysql.proc表,可以获取存储过程和函数的定义、参数列表、返回值和创建时间等信息,这些信息对于管理和维护数据库中的存储过程和函数非常有用。

mysql.proc是什么表

本教程操作系统:Windows10系统、MySQL8版本、Dell G3电脑。

mysql.proc是MySQL系统数据库中的一个系统表,用于存储关于存储过程和函数的元数据信息。它是一个核心表,用于记录数据库中定义的存储过程和函数的详细信息,包括名称、参数、返回类型、定义语句等。

mysql.proc表的结构如下:

CREATE TABLE mysql.proc (
  db char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
  name char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
  type enum('FUNCTION', 'PROCEDURE') COLLATE utf8_bin NOT NULL,
  specific_name char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
  language enum('SQL') COLLATE utf8_bin NOT NULL DEFAULT 'SQL',
  sql_data_access enum('CONTAINS_SQL', 'NO_SQL', 'READS_SQL_DATA', 'MODIFIES_SQL_DATA') COLLATE utf8_bin NOT NULL DEFAULT 'CONTAINS_SQL',
  is_deterministic enum('YES', 'NO') COLLATE utf8_bin NOT NULL DEFAULT 'NO',
  security_type enum('INVOKER', 'DEFINER') COLLATE utf8_bin NOT NULL DEFAULT 'DEFINER',
  param_list blob NOT NULL,
  returns longblob NOT NULL,
  body longblob NOT NULL,
  definer char(93) COLLATE utf8_bin NOT NULL DEFAULT '',
  created timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
  modified timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
  sql_mode set('REAL_AS_FLOAT', 'PIPES_AS_CONCAT', 'ANSI_QUOTES', 'IGNORE_SPACE', 'IGNORE_BAD_TABLE_OPTIONS', 'ONLY_FULL_GROUP_BY', 'NO_UNSIGNED_SUBTRACTION', 'NO_DIR_IN_CREATE', 'POSTGRESQL', 'ORACLE', 'MSSQL', 'DB2', 'MAXDB', 'NO_KEY_OPTIONS', 'NO_TABLE_OPTIONS', 'NO_FIELD_OPTIONS', 'MYSQL323', 'MYSQL40', 'ANSI', 'NO_AUTO_VALUE_ON_ZERO', 'NO_BACKSLASH_ESCAPES', 'STRICT_TRANS_TABLES', 'STRICT_ALL_TABLES', 'NO_ZERO_IN_DATE', 'NO_ZERO_DATE', 'INVALID_DATES', 'ERROR_FOR_DIVISION_BY_ZERO', 'TRADITIONAL', 'NO_AUTO_CREATE_USER', 'HIGH_NOT_PRECEDENCE', 'NO_ENGINE_SUBSTITUTION', 'PAD_CHAR_TO_FULL_LENGTH') COLLATE utf8_bin NOT NULL DEFAULT '',
  comment char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
  character_set_client char(32) COLLATE utf8_bin DEFAULT NULL,
  collation_connection char(32) COLLATE utf8_bin DEFAULT NULL,
  db_collation char(32) COLLATE utf8_bin DEFAULT NULL,
  body_utf8_long longblob
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Stored Procedures';

通过查询mysql.proc表,可以获取存储过程和函数的定义、参数列表、返回值和创建时间等信息。这些信息对于管理和维护数据库中的存储过程和函数非常有用。请注意,直接修改mysql.proc表的内容是不被推荐的,应该使用CREATE PROCEDURE或CREATE FUNCTION语句来定义、修改和删除存储过程和函数。

以上是mysql.proc是什么表的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn