• 締切済み

コメントが消えてしまいます

mysqlのクライアントから、create procedure文を入力し、表示するとコメントが消えてしまいます。 (例) >delimiter // >CREATE PROCEDURE abc() >BEGIN >#comment >SELECT "A"; >END; >// >SHOW CREATE PROCEDURE abc; >// +-----------+----------+---------------------------------------------------------------------------+ | Procedure | sql_mode | Create Procedure | +-----------+----------+---------------------------------------------------------------------------+ | abc | | CREATE DEFINER=`root`@`localhost` PROCEDURE `abc`() BEGIN SELECT "A"; END | どうしたらコメントが入れられるか、どなたかお知恵をお貸しください。 mysqlのバージョンは 5.1で、OSはRedHat EL5です。 どうぞよろしくお願いいたします。m(__)m

みんなの回答

  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.1

>#comment このコメントは、外部ファイルからsql文を読み込んで実行する時などに、外部ファイルをみた人に解りやすいようにするためのコメントなので、データとしては保持されません。 ーーMySQLmanualから構文抜粋引用 CREATE PROCEDURE sp_name ([proc_parameter[,...]]) [characteristic ...] routine_body characteristic: ... | COMMENT 'string' これをみるとcharacteristicの部分にコメント文を保持できるようですけど、routine_bodyの途中には無理のよう。 動作説明を入れるのが目的なら、このCOMMENT節でも十分かとおもう。

arigataou
質問者

補足

早速のご回答ありがとうございます。 補足ですが、現在Nabicatというツールを使って入力するとコメントが入ります。入ったあとで、MySQLのクライアントでshow create procedure xxと実行すると、コメントは入っています。しかしツールを使用せずに、MySQLのクライアントで直接入力するとコメントが入らないのです。 この当たりのことをご存知ないでしょうか。 どうぞよろしくお願いいたします。

関連するQ&A