Documentation Home
MySQL 5.6 リファレンスマニュアル
Download this Manual
EPUB - 7.5Mb
HTML Download (TGZ) - 7.2Mb
HTML Download (Zip) - 7.2Mb


MySQL 5.6 リファレンスマニュアル  /  INFORMATION_SCHEMA テーブル  /  INFORMATION_SCHEMA ROUTINES テーブル

21.18 INFORMATION_SCHEMA ROUTINES テーブル

ROUTINES テーブルはストアドルーチン (プロシージャーおよび関数の両方) に関する情報を提供します。ROUTINES テーブルには、ユーザー定義関数 (UDF) は含まれません。

mysql.procは、存在する場合、INFORMATION_SCHEMA.ROUTINES テーブルカラムに対応する mysql.proc テーブルカラムを示します。

INFORMATION_SCHEMA mysql.proc 備考
SPECIFIC_NAME specific_name  
ROUTINE_CATALOG   def
ROUTINE_SCHEMA db  
ROUTINE_NAME name  
ROUTINE_TYPE type {PROCEDURE|FUNCTION}
DATA_TYPE   COLUMNS テーブルの場合と同じ
CHARACTER_MAXIMUM_LENGTH   COLUMNS テーブルの場合と同じ
CHARACTER_OCTET_LENGTH   COLUMNS テーブルの場合と同じ
NUMERIC_PRECISION   COLUMNS テーブルの場合と同じ
NUMERIC_SCALE   COLUMNS テーブルの場合と同じ
DATETIME_PRECISION   COLUMNS テーブルの場合と同じ
CHARACTER_SET_NAME   COLUMNS テーブルの場合と同じ
COLLATION_NAME   COLUMNS テーブルの場合と同じ
DTD_IDENTIFIER   データ型ディスクリプタ
ROUTINE_BODY   SQL
ROUTINE_DEFINITION body_utf8  
EXTERNAL_NAME   NULL
EXTERNAL_LANGUAGE language NULL
PARAMETER_STYLE   SQL
IS_DETERMINISTIC is_deterministic  
SQL_DATA_ACCESS sql_data_access  
SQL_PATH   NULL
SECURITY_TYPE security_type  
CREATED created  
LAST_ALTERED modified  
SQL_MODE sql_mode MySQL 拡張
ROUTINE_COMMENT comment MySQL 拡張
DEFINER definer MySQL 拡張
CHARACTER_SET_CLIENT   MySQL 拡張
COLLATION_CONNECTION   MySQL 拡張
DATABASE_COLLATION   MySQL 拡張

:

  • MySQL は EXTERNAL_LANGUAGE を次のように計算します。

    • mysql.proc.language='SQL' の場合、EXTERNAL_LANGUAGENULL になります

    • それ以外の場合、EXTERNAL_LANGUAGEmysql.proc.language に存在します。ただし、まだ外部言語がないので、これは常に NULL になります。

  • CREATED: ルーチンが作成された日時です。これは TIMESTAMP 値です。

  • LAST_ALTERED: ルーチンが最後に変更された日時です。これは TIMESTAMP 値です。ルーチンが作成されてから変更されなかった場合、このカラムは CREATED カラムと同じ値を保持します。

  • SQL_MODE: ルーチンが作成または変更されたときに有効であり、ルーチンを実行するときの SQL モードです。指定可能な値については、セクション5.1.7「サーバー SQL モード」を参照してください。

  • CHARACTER_SET_CLIENT: ルーチンが作成されたときの character_set_client システム変数のセッション値です。

  • COLLATION_CONNECTION: ルーチンが作成されたときの collation_connection システム変数のセッション値です。

  • DATABASE_COLLATION: ルーチンが関連付けられているデータベースの照合順序です。

  • DATA_TYPECHARACTER_MAXIMUM_LENGTHCHARACTER_OCTET_LENGTHNUMERIC_PRECISIONNUMERIC_SCALEDATETIME_PRECISIONCHARACTER_SET_NAME、および COLLATION_NAME カラムは、ストアドファンクションの RETURNS 句に対するデータ型に関する情報を提供します。ストアドルーチンがストアドプロシージャーである場合、これらのカラムはすべて NULL になります。MySQL 5.6.4 で DATETIME_PRECISION が追加されました。

  • ストアドファンクション RETURNS データ型に関する情報は、PARAMETERS テーブルでも利用できます。関数に対する戻り値のデータ型の行は、ORDINAL_POSITION 値が 0 である行として識別できます。


User Comments
  Posted by stephen d on February 8, 2007
In case you would want to view all the stored procedures in a Database then we can use :

SELECT ROUTINE_NAME
FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_TYPE="PROCEDURE"
AND ROUTINE_SCHEMA="dbname";

You could use the same statement for FUNCTIONS just set
ROUTINE_TYPE="FUNCTION" in the WHERE clause
Sign Up Login You must be logged in to post a comment.