MySQL 8.0 リファレンスマニュアル MySQL NDB Cluster 8.0 を含む
このページは機械翻訳したものです。
SHOW CREATE PROCEDURE proc_name
このステートメントは、MySQL 拡張です。 これは、指定されたストアドプロシージャーを再作成するために使用できる正確な文字列を返します。 同様のステートメントである SHOW CREATE FUNCTION は、ストアドファンクションに関する情報を表示します (セクション13.7.7.8「SHOW CREATE FUNCTION ステートメント」を参照してください)。
いずれかのステートメントを使用するには、ルーチン DEFINER として指定されたユーザー、SHOW_ROUTINE 権限、グローバルレベルでの SELECT 権限、またはルーチンを含むスコープで付与された CREATE ROUTINE、ALTER ROUTINE または EXECUTE 権限を持っている必要があります。 CREATE ROUTINE、ALTER ROUTINE または EXECUTE のみがある場合、Create Procedure または Create Function フィールドに表示される値は NULL です。
mysql>SHOW CREATE PROCEDURE test.citycount\G*************************** 1. row *************************** Procedure: citycount sql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES, NO_ZERO_IN_DATE,NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION Create Procedure: CREATE DEFINER=`me`@`localhost` PROCEDURE `citycount`(IN country CHAR(3), OUT cities INT) BEGIN SELECT COUNT(*) INTO cities FROM world.city WHERE CountryCode = country; END character_set_client: utf8mb4 collation_connection: utf8mb4_0900_ai_ci Database Collation: utf8mb4_0900_ai_ci mysql>SHOW CREATE FUNCTION test.hello\G*************************** 1. row *************************** Function: hello sql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES, NO_ZERO_IN_DATE,NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION Create Function: CREATE DEFINER=`me`@`localhost` FUNCTION `hello`(s CHAR(20)) RETURNS char(50) CHARSET utf8mb4 DETERMINISTIC RETURN CONCAT('Hello, ',s,'!') character_set_client: utf8mb4 collation_connection: utf8mb4_0900_ai_ci Database Collation: utf8mb4_0900_ai_ci
character_set_client は、このルーチンが作成されたときの character_set_client システム変数のセッション値です。collation_connection は、このルーチンが作成されたときの collation_connection システム変数のセッション値です。 Database Collation は、このルーチンが関連付けられているデータベースの照合順序です。