文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  INFORMATION_SCHEMA ROUTINES 資料表

28.3.30 INFORMATION_SCHEMA ROUTINES 資料表

ROUTINES 資料表提供關於儲存常式(儲存程序和儲存函數)的資訊。ROUTINES 資料表不包含內建(原生)函數或可載入函數。

ROUTINES 資料表有下列欄位

  • SPECIFIC_NAME

    常式的名稱。

  • ROUTINE_CATALOG

    常式所屬的目錄名稱。此值永遠是 def

  • ROUTINE_SCHEMA

    常式所屬的結構描述(資料庫)名稱。

  • ROUTINE_NAME

    常式的名稱。

  • ROUTINE_TYPE

    儲存程序為 PROCEDURE,儲存函數為 FUNCTION

  • DATA_TYPE

    如果常式是儲存函數,則為傳回值資料類型。如果常式是儲存程序,則此值為空。

    DATA_TYPE 值只有類型名稱,沒有其他資訊。DTD_IDENTIFIER 值包含類型名稱,可能還有其他資訊,例如精確度或長度。

  • CHARACTER_MAXIMUM_LENGTH

    對於儲存函數字串傳回值,最大字元長度。如果常式是儲存程序,則此值為 NULL

  • CHARACTER_OCTET_LENGTH

    對於儲存函數字串傳回值,最大位元組長度。如果常式是儲存程序,則此值為 NULL

  • NUMERIC_PRECISION

    對於儲存函數數值傳回值,數值精確度。如果常式是儲存程序,則此值為 NULL

  • NUMERIC_SCALE

    對於儲存函數數值傳回值,數值刻度。如果常式是儲存程序,則此值為 NULL

  • DATETIME_PRECISION

    對於儲存函數時間傳回值,小數秒精確度。如果常式是儲存程序,則此值為 NULL

  • CHARACTER_SET_NAME

    對於儲存函數字元字串傳回值,字元集名稱。如果常式是儲存程序,則此值為 NULL

  • COLLATION_NAME

    對於儲存函數字元字串傳回值,排序名稱。如果常式是儲存程序,則此值為 NULL

  • DTD_IDENTIFIER

    如果常式是儲存函數,則為傳回值資料類型。如果常式是儲存程序,則此值為空。

    DATA_TYPE 值只有類型名稱,沒有其他資訊。DTD_IDENTIFIER 值包含類型名稱,可能還有其他資訊,例如精確度或長度。

  • ROUTINE_BODY

    用於常式定義的語言。此值永遠是 SQL

  • ROUTINE_DEFINITION

    常式執行的 SQL 陳述式文字。

  • EXTERNAL_NAME

    此值永遠是 NULL

  • EXTERNAL_LANGUAGE

    儲存常式的語言。該值從 mysql.routines 資料字典表格的 external_language 欄位讀取。

  • PARAMETER_STYLE

    此值永遠是 SQL

  • IS_DETERMINISTIC

    YESNO,取決於常式是否使用 DETERMINISTIC 特性定義。

  • SQL_DATA_ACCESS

    常式的資料存取特性。該值是 CONTAINS SQLNO SQLREADS SQL DATAMODIFIES SQL DATA 其中之一。

  • SQL_PATH

    此值永遠是 NULL

  • SECURITY_TYPE

    常式 SQL SECURITY 特性。該值是 DEFINERINVOKER 其中之一。

  • CREATED

    常式的建立日期和時間。這是 TIMESTAMP 值。

  • LAST_ALTERED

    常式上次修改的日期和時間。這是 TIMESTAMP 值。如果常式自建立以來未經修改,則此值與 CREATED 值相同。

  • SQL_MODE

    當常式建立或變更時生效的 SQL 模式,以及常式在其中執行的模式。如需允許的值,請參閱第 7.1.11 節「伺服器 SQL 模式」

  • ROUTINE_COMMENT

    如果常式有註解,則為註解的文字。如果沒有,則此值為空。

  • DEFINER

    DEFINER 子句中命名的帳戶(通常是建立常式的使用者),格式為 '使用者名稱'@'主機名稱'

  • CHARACTER_SET_CLIENT

    當常式建立時,character_set_client 系統變數的工作階段值。

  • COLLATION_CONNECTION

    當常式建立時,collation_connection 系統變數的工作階段值。

  • DATABASE_COLLATION

    與常式相關聯的資料庫定序。

注意事項

  • 若要查看常式的資訊,您必須是命名為常式 DEFINER 的使用者,擁有 SHOW_ROUTINE 權限,在全球層級擁有 SELECT 權限,或者在包含常式的範圍內擁有 CREATE ROUTINEALTER ROUTINEEXECUTE 權限。ROUTINE_DEFINITION 欄位為 NULL,如果您只有 CREATE ROUTINEALTER ROUTINEEXECUTE 權限。

  • 有關儲存函數傳回值的資訊也可用於 PARAMETERS 表格。儲存函數的傳回值列可以識別為 ORDINAL_POSITION 值為 0 的列。