首頁 >常見問題 >mysql.proc是什麼表

mysql.proc是什麼表

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌原創
2023-07-25 15:57:372023瀏覽

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